script pour effacer des dossiers de plus de X jours

script pour effacer des dossiers de plus de X jours - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 21-03-2008 à 14:22:00    

Salut,
 
Quelle serait la façon la plus propre en script shell d'effacer tous les sous-dossiers (d'un dossier donné) de plus de 5 jours ?
Ds mon cas le dossier qui contient les sous-dossiers est tjrs le meme, les sous-dossiers ne sont pas vides !
 
faut il faire un find + un rm (ou rmdir) avec le -exec ou bien rm ou find peuvent le faire directement ?
 
Merci

Reply

Marsh Posté le 21-03-2008 à 14:22:00   

Reply

Marsh Posté le 21-03-2008 à 14:38:02    

find -delete ?


---------------
TriScale innov
Reply

Marsh Posté le 21-03-2008 à 14:38:54    

franceso a écrit :

find -delete ?


avec les options -ctime, -atime etc ... :jap:


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 21-03-2008 à 14:38:58    

Avec un find et l'option mtime ou ctime ca devrait le faire
 
moi je suis plutot partisan des deux options suivantes :
- find et création d'une liste de fichiers, que tu valide AVANT suppression
(a moins que tu automatise completement)
- find, boucle et rm dans la boucle

Reply

Marsh Posté le 21-03-2008 à 14:47:09    

atime = dernier acces ?
ctime = derniere modification ?
 
Pke moi je vx par rapport a la date de "création" qu'il y ai des modif ou des acces peu importe.

Reply

Marsh Posté le 21-03-2008 à 14:53:12    

supernina a écrit :

atime = dernier acces ?
ctime = derniere modification ?
 
Pke moi je vx par rapport a la date de "création" qu'il y ai des modif ou des acces peu importe.

man find :

-atime n              File was last accessed n*24 hours ago.
-ctime n              File's status was last changed n*24 hours ago.
-mtime n              File's data was last modified n*24 hours ago.


Dans ton cas, c'est le ctime qui t'intéresse à mon avis...


---------------
TriScale innov
Reply

Marsh Posté le 21-03-2008 à 16:37:54    

ctime n'est pas tout a fait ce que je recherche.
 
Pour l'instant j'ai cette commande :
 
find /dir1/dir2 -ctime 5 -exec rm -fR {}+
 
qui va m'effacer tous les dossiers de "dir2" dont la derniere modif date de 5 jours. Y aurais pas pour la date de création du dossier plutot ?
 
merci

Reply

Marsh Posté le 21-03-2008 à 20:45:53    

Ca n'existe pas la date de creation sous Linux.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed