Spesso il remove di file e directory viene guidato dal comando find.
Questo opportunamente istruito seleziona gli oggetti da rimuovere.
Dovendo eseguire un lavoro del tipo “elimina i file più vecchi di
tot giorni” il comando è:
find . -type f -mtime +tot -exec rm {} \;
Porre particolare attenzione a -mtime +tot. Secondo le istruzioni di
find, vengono selezionati i file la cui data di modifica è più
vecchia di tot giorni (non esiste una granularità inferiore a questo termine).
Il problema è: come vengono calcolati i tot giorni? In maniera molto
semplice. Posto che 1 giorno vale 86400“ (60 * 60 * 24 = 86400),
se la differenza tra la data del file e la data attuale (ovvero quella
di esecuzione del comando) è superiore a tot * 86400 il file è candidato
all'eliminazione. Dunque i giorni sono calcolati al secondo. E di
ciò va tenuto conto negli script.