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 maxdepthnel comando find.
find /some/dir -type f -mtime +5 -delete
/ some/dir/versione. :(
Con zshe (.m+n) qualificatori glob : .seleziona solo i file regolari, m+nseleziona 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 Dper 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 -rlcon rmse 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
-lsinvece di-deleteassicurarsi che ciò non elimini tutto ciò che desideravano. Sì, parlando per esperienza qui.