Spesso è necessario visualizzare i nuovi file creati di recente nel sistema operativo. Ciò è spesso richiesto da un amministratore di sistema che ha creato un file di configurazione e poi ha dimenticato dove era stato salvato. Inoltre, la necessità di cercare nuovi file può nascere dall'esigenza di vedere se un file è stato modificato di recente o meno. In generale, le situazioni possono essere molto diverse. Il vantaggio del sistema operativo Linux è che tradizionalmente offre diversi modi per risolvere un particolare problema.
Il modo più semplice e comune per trovare nuovi file in Linux è l'utilità Find
. A seconda delle esigenze attuali, vengono passati diversi parametri, ad esempio è possibile cercare i file solo all'interno di un certo intervallo di mesi o giorni del calendario; si veda sotto per i dettagli su come questo può essere fatto.
I file vengono visualizzati in directory e sottodirectory e ordinati:
$ find /etc -type f -printf '%TY-%Tm-%Td %TT %p ' | sort –r
Come si può vedere, il risultato è piuttosto impressionante, ma non è possibile riconoscere i nuovi file dall'intero elenco. Pertanto, è necessario utilizzare un altro comando:
$ find /etc -type f -mmin -120
In questo modo si specifica che il sistema deve cercare solo i file creati nell'ultima ora.
Se è necessario coprire gli ultimi due giorni, inserire il comando seguente:
$ find /etc -type f -mtime -2
A volte non è necessario scavare nelle sottodirectory di terzo livello, quindi per escludere questa azione è necessario utilizzare l'opzione speciale maxdepth
:
$ find /etc -maxdepth 3 -mtime -2 -type f
Possiamo vedere tutti i nuovi file creati sul sistema Linux negli ultimi sette giorni, ma con l'eccezione che gli ultimi tre giorni non devono essere presi in considerazione:
$ find /etc -type f -mtime -7 ! -mtime -3
Questi comandi forniscono il percorso del file, ma per visualizzarne gli attributi è necessario utilizzare l'opzione speciale --exec
. In seguito, verranno visualizzati gli attributi di ogni nuovo file utilizzando l'utility ls
:
$ find /etc -type f -mmin -120 -exec ls -al {} ;
Se trovate questo comando troppo confuso e complicato, potete usarne un altro:
$ find /etc -type f -mmin -120 | xargs ls -l
Qui usiamo già un'altra utilità, xargs
. L'utilità find permette anche di trovare i file più recenti di un determinato file. Ad esempio, creiamo un file di riferimento:
$ touch /tmp/test
Ora trova tutti i file più recenti nella directory principale che sono stati creati dopo di esso:
$ find / -type f -newer /tmp/test
Passiamo a un altro metodo.
Questo metodo di ricerca dei nuovi file è molto più semplice del precedente, quindi può essere consigliato ai principianti di Linux. Il comando ls
può anche ordinare i file di una directory in base alla data di creazione. Per farlo, è sufficiente eseguire ls:
$ ls -ltr
I file potrebbero essere troppi, quindi è consigliabile eseguire anche questo comando:
$ ls -ltr | tail
Questi non sono tutti i modi per trovare nuovi file, ma sono sufficienti per svolgere il lavoro in modo rapido ed efficiente. Come si può vedere, i comandi di ricerca di base find e ls possono essere resi ancora più flessibili se combinati con sort, tail
e grep
.