Ogni file ha tre timestamp ad esso associati (memorizzati come il numero di secondi dall'Epoch, 1 gennaio 1970). I tre timestamp sono:
- Ora di accesso (ora) :il timestamp dell'ultimo accesso al file.
- Tempo di modifica (mtime) :il timestamp dell'ultima modifica del file.
- Cambia l'ora (-ctime) :il timestamp dell'ultima modifica dei metadati per un file (come autorizzazioni o proprietà).
In un lungo elenco di directory, il timestamp mostrato è l'ora di modifica (mtime). Per vedere tutti i timestamp e molte altre informazioni utili, usa il programma stat con l'opzione dettagliata (-x):
$ stat -x filename
Ecco un esempio di output da stat:
$ stat -x test.sh File: "test.sh" Size: 54 FileType: Regular File Mode: (0644/-rw-r--r--) Uid: ( 501/ geek) Gid: ( 20/ staff) Device: 1,4 Inode: 8954360 Links: 1 Access: Sat Jan 18 08:30:54 2020 Modify: Sat Jan 18 08:30:49 2020 Change: Sat Jan 18 08:30:49 2020
Senza l'opzione "-x", verrà mostrato un riepilogo dei permessi del filesystem, delle proprietà e del tempo di accesso. Ad esempio:
$ stat test.sh 16777220 8954360 -rw-r--r-- 1 sandy staff 0 54 "Jan 18 08:30:54 2020" "Jan 18 08:30:49 2020" "Jan 18 08:30:49 2020" "Jan 18 08:30:49 2020" 4096 8 0 test.sh
MAC non memorizza l'ora di creazione del file per impostazione predefinita; tuttavia, alcuni filesystem (ufs2, ext4, zfs, btrfs, jfs) fanno risparmiare tempo di creazione. È possibile accedere all'ora di creazione con il comando stat. Dato che alcune applicazioni modificano un file creando un nuovo file e quindi eliminando l'originale, la data di creazione potrebbe non essere precisa.
Utilizzo del comando trova per cercare in base al timestamp del file
Le opzioni -atime, -mtime e -ctime sono le opzioni dei parametri temporali disponibili con trova. Possono essere specificati con valori interi in numero di giorni. Il numero può essere preceduto dai segni – o +. Il segno – implica minore di, mentre il segno + implica maggiore di.
Considera i seguenti esempi:
1. Stampa i file a cui è stato effettuato l'accesso negli ultimi sette giorni:
$ find . -type f -atime -7 -print
2. Stampa file che hanno un tempo di accesso di esattamente sette giorni:
$ find . -type f -atime 7 -print
3. Stampa file con un tempo di accesso più vecchio di sette giorni:
$ find . -type f -atime +7 -print
Il parametro -mtime cercherà i file in base all'ora di modifica; -ctime ricerca in base all'ora di modifica.