Il comando trova in Linux viene utilizzato per cercare file e cartelle in base a diversi parametri. Questi parametri possono essere il nomefile , dimensione , tipo di file , ecc.
[ Potrebbe piacerti anche:Come trovare file contenenti una stringa di testo specifica in Linux ]
Uno di questi parametri è il timestamp del file. In Linux (e in tutti i file system basati su Unix) ci sono 3 timestamp mantenuto per ogni file:
- Ora dell'ultima modifica
- Ora dell'ultimo accesso
- Ora dell'ultima modifica dello stato (ovvero, quando i metadati del file come le autorizzazioni vengono modificati)
Vediamo come utilizzare trova per cercare i file in base a ciascuno di questi timestamp .
Trova timestamp file in Linux
Prima di tutto, possiamo eseguire il "stat ' comando in Linux per ottenere tutti questi timestamp per un file. Ad esempio per un file con il nome "stat ', esegui:
$ stat tmp
Trova i file in base al timestamp
Ora, per trovare i file in base al timestamp , utilizziamo l'argomento '-newerXY'
di trovare dalla pagina man.
man find
Quindi nell'argomento '-newerXY'
, possiamo avere X come a , c o m , rispettivamente per l'ultimo accesso, l'ultima modifica dello stato e l'ora dell'ultima modifica e Y come t , in modo che l'argomento successivo sia un timestamp stringa.
Nota :L'ora di nascita, ovvero l'ora di creazione di un file, non viene mantenuta in Unix file system basati su
Per generalizzare, il comando da eseguire si presenta così:
find <directory_path> -newer<a/m/c>t ‘<timestamp>’
Qui, il formato del timestamp dovrebbe essere:'AAAA-MM-GG HH:MM:SS' .
Proviamo questo su una cartella con pochi file e solo due file che hanno avuto accesso, modificato e stato cambiato dopo un tempo specificato.
find . -newerat ‘2021-02-19 06:34’ find . -newerct ‘2021-02-19 06:34’ find . -newermt ‘2021-02-19 06:34’
Verifica con 'stat' se i timestamp di entrambi i file sono effettivamente maggiori del tempo specificato.
stat tmp2 tmp3
Conclusione
Abbiamo imparato come usare il '-newerXY'
l'argomento del comando trova per cercare i file in base a timestamp .
Tieni presente che puoi anche utilizzare un altro file come timestamp di riferimento invece di specificare esplicitamente il timestamp , nel qual caso il 't' dall'argomento può essere saltato.
Grazie mille per la lettura e facci sapere i tuoi pensieri nei commenti qui sotto!