Effacer folder
Le
Steve

Bonjour,
J'ai un question toute bête.
Je créeun repertoire tous les soirs par l'instruction
mkdir /home/xxx/$(date -I)
=> ce qui me créé un repertoire avec la date (2013-07-01 )
Maintenant, je souaite éffacer avec un script, le fichier plus vieux d'un
mois
=> rm -abcdef /home/xxx/$(date -I -30 ) ne fonctionne pas :-)
qlq 'un a une idée ?
Merci
J'ai un question toute bête.
Je créeun repertoire tous les soirs par l'instruction
mkdir /home/xxx/$(date -I)
=> ce qui me créé un repertoire avec la date (2013-07-01 )
Maintenant, je souaite éffacer avec un script, le fichier plus vieux d'un
mois
=> rm -abcdef /home/xxx/$(date -I -30 ) ne fonctionne pas :-)
qlq 'un a une idée ?
Merci
rm -abcdef /home/xxx/$(date -I --date='1 month ago')
... mais tu risques de ne pas pouvoir effacer les fichiers des 29 au 31
janvier, 31 mars, 31 mai, etc.
rm -abcdef /home/xxx/$(date -I --date='30 days ago')
Le 23/07/2013 13:59, Steve écrivit :
Le shell sait faire des soustractions. Par exemple tu peux convertir la
date actuelle en secondes, soustraire le nombre de secondes
correspondant à 30 jours, et demander à date de convertir la date ainsi
calculée :
$ date -I -d @$(($(date +%s)-30*24*3600))
2013-06-23
Sinon, à supposer que tu touches pas au dossiers créés, find peut
chercher l'information avec -ctime (en jours) :
$ find /home/xxx/ -maxdepth 1 -ctime 30
(avec un -exec rm -r {} ; à la fin par exemple)
--
« Ceci n'est pas une signature. » — René Magritte (Apocryphe)
Le 23/07/2013 13:59, Steve écrivit :
Le shell sait faire des soustractions. Par exemple tu peux convertir la
date actuelle en secondes, soustraire le nombre de secondes
correspondant à 30 jours, et demander à date de convertir la date ainsi
calculée :
$ date -I -d @$(($(date +%s)-30*24*3600))
2013-06-23
Sinon, à supposer que tu touches pas au dossiers créés, find peut
chercher l'information avec -ctime (en jours) :
$ find /home/xxx/ -maxdepth 1 -ctime 30
(avec un -exec rm -r {} ; à la fin par exemple)
--
« Ceci n'est pas une signature. » — René Magritte (Apocryphe)
Meci ... parfait..