Effacer par date
Je cherchais un moyen d’effacer automatiquement des fichiers dans un répertoire dont la date de création serait inférieure à une certaine date (plus vieille que).
La solution ? Une ligne de commande…
En fait, il s’agit de passer en paramètres à la commande ‘rm’ une liste de fichiers.
L’utilitaire Find est approprié dans ce cas.
Nous utiliserons 2 parametres :
-type f : précise que l’on cherche des fichiers
-mtime +10 : précise que l’on cherche des fichiers plus vieux que 240h (10*24h).
-maxdepth 1 : On ne veut pas aller récursivement dans tous les répertoires.
La commande find :
find Junk -type f -mtime +10 -maxdepth 1
Associée à la commande rm, cela nous donne :
rm -f `find Junk -type f -mtime +10 -maxdepth 1`
Cette commande va supprimer tous les fichiers enfants direct du répertoire Junk qui n’ont plus été modifié depuis 10 jours.
On pourrait aussi utiliser la commande ‘-delete’ de Find.
No Comments