Chi cerca, trova!
-
Categoria: Linux
-
Pubblicato Mercoledì, 18 Settembre 2013
-
Scritto da Paolo Scolamacchia
Il comando find (letteralmente: 'trova'), presente in tutte le distribuzioni di Linux, é assai potente e versatile.
Senza volersi addentrare in tutte le sue opzioni, di seguito si propongono alcuni esempi pratici e frequenti di utilizzo.
1a) come faccio a trovare nella directory corrente, e in tutte le sue sottodirectories, i files che si chiamano "password.txt" ?
find . -name "password.txt"
1b) come faccio a trovare in tutto il file system i files che si chiamano "password.txt"?
find / -name "password.txt"
1c) come faccio a trovare nella directory /usr, e in tutte le sue sottodirectories, i files che si chiamano "password.txt"?
find /usr -name "password.txt"
1d) come faccio a trovare nella directory /usr, e in tutte le sue sottodirectories, i files che si chiamano "password.txt", senza fare distinzione di maiuscole e minuscole? (quindi comprende tutte le varianti del nome come: Password.txt, PASSWORD.Txt, pAssWord.txT, ecc.)
find /usr -iname "password.txt"
2) come faccio a trovare nel file system i file che hanno estensione "txt" ?
find / -name "*txt"
3a) come faccio a trovare nel file system i file che hanno estensione "txt" e che hanno una dimensione maggiore di 501 caratteri?
find / -name "*txt" -size +501c
3b) come faccio a trovare nel file system i file che hanno estensione "txt" e che hanno una dimensione minore di 632 caratteri?
find / -name "*txt" -size -632c
4a)come faccio a trovare nella cartella corrente, e in tutte le sue sottodirectories, tutti i files il cui nome inizia con "tmp" ?
find . -name "tmp*" -type f
4b) come faccio a trovare nella cartella corrente, e in tutte le sue sottodirectories, tutte le directories il cui nome inizia con "tmp" ?
find . -name "tmp*" -type d
5) come faccio a trovare nel file system i files che hanno estensione "log" e che appartengono all'utente jack ?
find / -name "*log" -username jack
6a) come faccio a trovare nel file system i files che hanno estensione "txt" e che hanno esattamente il permesso di lettura e di scrittura per l'utente?
find / -name "*txt" -perm u=rw
6b) come faccio a trovare nel file system i files che hanno estensione "txt" e che hanno permesso di lettura e scrittura per l'utente, e per il gruppo?
find / -name "*txt" -perm u=rw,g=rw
7) come faccio a trovare nel file system i files che hanno estensione "txt" e che sono stati modificati meno di 61 minuti fa?
find / -name "*txt" -mmin -61
8) come faccio a trovare nel file system i files il cui nome inizia con "pippo"
o nel nome contengono "2013" ?
find / -name "pippo*" -or -name "*2013*"
9) come faccio a trovare dalla cartella /home in giù, tutti i file con estensione "log" e che contengono la parola “error” ?
find /home -name "*log" -exec fgrep -l error {} \;
10) come faccio a trovare
e cancellare dalla cartella /tmp in giù, tutti i file con estensione "aaa" e che sono stati modificati più di 62 minuti fa ?
find /tmp -name "*aaa" -mmin +62 -exec rm {} \;
Credits:
http://unixhelp.ed.ac.uk/CGI/man-cgi?find http://www.thegeekstuff.com/2009/03/15-practical-linux-find-command-examples/
You have no rights to post comments