Soluzione 1:
No, puoi utilizzare una stringa data/ora.
Da man find
:
-riferimento XY più recente
Confronta il timestamp del file corrente con il riferimento. L'argomento di riferimento è normalmente il nome di un file (e uno dei suoi timestamp è usato per il confronto) ma può anche essere una stringa che descrive un tempo assoluto. X e Y sono segnaposto per altre lettere e queste lettere selezionano quale tempo appartiene a come il riferimento viene utilizzato per il confronto.a The access time of the file reference B The birth time of the file reference c The inode status change time of reference m The modification time of the file reference t reference is interpreted directly as a time
Esempio:
find -newermt "mar 03, 2010" -ls
find -newermt yesterday -ls
find -newermt "mar 03, 2010 09:00" -not -newermt "mar 11, 2010" -ls
Soluzione 2:
Non direttamente correlato alla domanda, ma potrebbe essere interessante per alcuni che inciampano qui.
trova Il comando non supporta direttamente il parametro -older per trovare file più vecchi di una data richiesta, ma puoi usare l'istruzione negate (usando l'esempio di risposta accettata):
touch -t 201003160120 some_file
find . ! -newer some_file
restituirà i file più vecchi rispetto alla data fornita.
Soluzione 3:
Se hai solo '-newer file' puoi usare questa soluzione alternativa:
# create 'some_file' having a creation date of 16 Mar 2010:
touch -t 201003160120 some_file
# find all files created after this date
find . -newer some_file
tocco dell'uomo:
-t STAMP
use [[CC]YY]MMDDhhmm[.ss] instead of current time
Supponendo che il tuo touch abbia questa opzione (il mio è touch 5.97).
Soluzione 4:
find <dir> -mtime -20
questo comando find troverà i file modificati negli ultimi 20 giorni.
- mtime -> modificato (atime=accesso, ctime=creato)
- -20 -> meno di 20 giorni (20 esattamente 20 giorni, +20 più di 20 giorni)
Puoi aggiungere ulteriori limitazioni come:
find <dir> -mtime -20 -name "*.txt"
come prima, ma trova solo i file che terminano con '.txt'.
Soluzione 5:
Giusto per aggiungere altro, puoi anche usare due argomenti newermt per cercare in un intervallo di tempo:
find ! -newermt "apr 01 2007" -newermt "mar 01 2007" -ls
per trovare tutti i file di marzo 2007.