Script de nettoyage

Le
Jolitorax
Bonjour,

A faire suivre au bon endroit si celui ci n'est pas le plus approprié

Je cherche à faire un script en bash très simple: supprimer un
répertoire et tout son contenu si la date de dernière modification de
ce répertoire est supérieure à disons 28 jours.

Le soucis, c'est que la décision de suppression doit être absolument
prise sur la date du répertoire, et pas sur celle des fichiers et des
sous répertoire qui le compose

Un exemple, soit 2 répertoires, toto le récent et tata le vieux:

ll

drwxr-xr-x 2 machin machin 4096 2008-01-23 13:02 tata/
drwxr-xr-x 3 machin machin 4096 2009-01-23 13:09 toto/

ll -R

tata:
total 0
-rw-r--r-- 1 machin machin 0 2008-01-23 13:02 truca
-rw-r--r-- 1 machin machin 0 2008-01-23 13:02 trucb
-rw-r--r-- 1 machin machin 0 2008-01-23 13:02 trucc

toto:
total 4
drwxr-xr-x 2 machin machin 4096 2008-01-23 13:10 rep-vieux/
-rw-r--r-- 1 machin machin 0 2009-01-23 13:02 truc1
-rw-r--r-- 1 machin machin 0 2009-01-23 13:02 truc2
-rw-r--r-- 1 machin machin 0 2009-01-23 13:02 truc3

toto/rep-vieux:
total 0
-rw-r--r-- 1 machin machin 0 2008-01-23 13:10 truc4

Je cherche que le script supprime tata et tout ce qu'il contient, et
ne touche absolument pas à toto malgré le fait que toto contienne un
répertoire et un fichier ancien

find connait les options -maxdepth et -atime qui m'intéressent, mais
selon le man les options -*time ne concernent que les fichiers.

find . -maxdepth 1 -type d -atime +28

Par exemple ne me donne aucun résultat


Des idées vers ou creuser, tout en restant en bash ?

Merci

--
Jean Louis Mas
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Alain Montfranc
Le #18467751
Jolitorax a écrit

find . -maxdepth 1 -type d -atime +28



atime c'est pour l'acces. Find va le changer. Donc...

Plutot mtime
Jolitorax
Le #18468251
Alain Montfranc nous narrait:

find . -maxdepth 1 -type d -atime +28





atime c'est pour l'acces. Find va le changer. Donc...
Plutot mtime



Bien vu, ça marche. Merci

Par contre, quel est l'intérêt d'utiliser -atime avec find s'il modifie
la date d'accès à chaque recherche ?

--
Jean Louis Mas
BKRT #3
Alain Montfranc
Le #18468241
Jolitorax a écrit
Alain Montfranc nous narrait:

find . -maxdepth 1 -type d -atime +28





atime c'est pour l'acces. Find va le changer. Donc...
Plutot mtime



Bien vu, ça marche. Merci

Par contre, quel est l'intérêt d'utiliser -atime avec find s'il modifie
la date d'accès à chaque recherche ?



La date d'acces des repertoires puisqu'ils sont lus, pas des fichiers
Publicité
Poster une réponse
Anonyme