Effacer par date
• @ Works
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 quelaues 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.