GNU/Linux >> Linux Esercitazione >  >> Linux

Come trovare file basati su timestamp in Linux

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:

  1. Ora dell'ultima modifica
  2. Ora dell'ultimo accesso
  3. 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!


Linux
  1. Come convertire file in codifica UTF-8 in Linux

  2. Come trovare file modificati recenti o di oggi in Linux

  3. Come trovare un file in Linux

  4. Come trovare un file in Linux in tutte le directory in modo ricorsivo

  5. Come trovare file duplicati in Linux

Come trovare file in Debian 10

Autorizzazioni Linux:come trovare le autorizzazioni di un file

Come trovare file contenenti una stringa di testo specifica in Linux

Come trovare i file modificati nelle ultime 24 ore in Linux

Come trovare file con il comando fd in Linux

Come comprimere un file in Linux