Da find
pagina man di:
Numeric arguments can be specified as
+n for greater than n,
-n for less than n,
n for exactly n.
-mtime n
File's data was last modified n*24 hours ago. See the comments for
-atime to understand how rounding affects the interpretation of
file modification times.
-atime n
File was last accessed n*24 hours ago. When find figures out
how many 24-hour periods ago the file was last accessed, any
fractional part is ignored, so to match -atime +1, a file has to have
been accessed at least two days ago.
Quindi, -mtime +5
troverà i file modificati per ultimi altro di 5*24 ore fa e -mtime -5
troverà i file modificati per ultima meno di 5*24 ore fa. Per eliminare i file più vecchi di 5 giorni, faresti:
find /mnt/sdb1/tmp/ -type f -mtime +5 -exec rm {} \;
Se questo non restituisce il risultato desiderato, potrebbe esserci un problema con il timestamp. È riportato correttamente per i file in questione? Se si tratta di un'unità USB esterna, i file potrebbero essere stati creati su un altro computer e avere un timstamp diverso da quello previsto.
Nota che l'unità qui è un giorno, 24 ore. Quindi più di 5 giorni significa almeno 6 giorni poiché il valore è sempre arrotondato e le parti frazionarie ignorate.