Risposte:
Questo eliminerà tutti i file più vecchi di 5 giorni, puoi inserirne uno -name '*log'
anche per essere più precisi e potresti voler specificare anche un maxdepth
nel comando find.
find /some/dir -type f -mtime +5 -delete
/ some/dir/
versione. :(
Con zsh
e (.m+n)
qualificatori glob : .
seleziona solo i file regolari, m+n
seleziona i file modificati più di n giorni fa;
ad esempio, elencare i file nella directory corrente che sono stati modificati più di 9 giorni fa:
print -rl -- *(.m+9)
aggiungi D
per includere file dot:
print -rl -- *(D.m+9)
o se si desidera ricorrere (ed elencare ad esempio solo i file che terminano con .log
):
setopt extendedglob
print -rl -- **/*.log(.m+9)
sostituirlo print -rl
con rm
se si è soddisfatti del risultato; anche se potresti dover usarezargs
se hai molti file (per evitare un elenco di argomenti troppo lungo ):
autoload zargs
zargs ./**/*(.m+9) -- rm
-ls
invece di-delete
assicurarsi che ciò non elimini tutto ciò che desideravano. Sì, parlando per esperienza qui.