Réponses:
Cela supprimera tous les fichiers de plus de 5 jours, vous pouvez également y mettre un -name '*log'
pour être plus précis et vous pouvez également spécifier un maxdepth
dans la commande find.
find /some/dir -type f -mtime +5 -delete
/ some/dir/
version. :(
Avec zsh
et (.m+n)
qualificatifs glob : .
sélectionne uniquement les fichiers normaux, m+n
sélectionne les fichiers modifiés il y a plus de n jours;
Par exemple, listez les fichiers du répertoire actuel qui ont été modifiés il y a plus de 9 jours:
print -rl -- *(.m+9)
ajouter D
pour inclure des fichiers de points:
print -rl -- *(D.m+9)
ou si vous voulez recurse (et listez par exemple uniquement les fichiers se terminant par .log
):
setopt extendedglob
print -rl -- **/*.log(.m+9)
remplacez print -rl
par rm
si vous êtes satisfait du résultat; mais vous devrez peut-être utiliser zargs
si vous avez beaucoup de fichiers (pour éviter une liste d'arguments trop longue ):
autoload zargs
zargs ./**/*(.m+9) -- rm
-ls
au lieu de-delete
s'assurer que cela ne supprimera rien qu'ils voulaient garder. Oui, parlant d'expérience ici.