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.

Totophe

Creative Mind, Digital Development Strategist, and Web & Marketing Technologies Consultant in Brussels, Belgium

No Comments

Leave a Comment

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.