Eseguire la ricerca dei files da terminale con Linux

Trovare files e cartelle a riga di comando

comando find in linux

Il comando di ricerca di Linux è una delle utilità della riga di comando di comando più importanti e utilizzate di frequente nei sistemi operativi di tipo Unix. Il comando Find viene utilizzato per cercare e individuare l’elenco di file e directory in base alle condizioni specificate per i file che corrispondono agli argomenti.

Per usarlo basta aprire il terminale, posizionarsi nella cartella da dove far partire la ricerca, ed eseguire il comando find accompagnato da una serie di argomenti, di seguito descritti

Per trovare tutti i file e le cartelle con un particolare nome

find . -name nomefile

Il . (punto) posizionato dopo il comando find indica il fatto che la ricerca deve avvenire nella posizione dove l’abbiamo eseguita. Se vogliamo eseguirla da un’altra posizione, ad esempio la home, possiamo utilizzare il comando

find /home -name nomefile.txt

Per trovare tutti i file con un particolare nome ignorando le maiuscole e le minuscole

find /home -iname nomefile.txt

Trovare tutte le directory con un particolare nome

find / -type d -name nomecartella

Trovare tutti i file con un particolare nome

find / -type f -name nomefile.txt

Trovare tutti i file di una particolare estensione

find . -type f -name "*.txt"

Trovare tutti i file con un particolare permesso di accesso o scrittura

find . -type f -perm 0777 -print

Trovare tutti i file che non hanno un particolare permesso di accesso o scrittura

find . -type f ! -perm 777

Trovare o rimuovere tutti i file doppi con una certa estensione

find . -type f -name "*.txt" -exec rm -f {} \;

Trovare tutti i file vuoti

find . -type f -empty

Trovare tutte le cartelle vuote

find . -type d -empty

Trovare tutti i file modificati negli ultimi 30 giorni

find . -mtime 30

Trovare tutti i file modificati nell’ultima ora

find . -mmin -60

Trovare tutti file della dimensione di 20 MB

find . -size 20M

Trovare tutti i file della dimensione tra 20 MB e 5 GB

find . -size +20M -size -5G

Controlliamo ciclicamente il funzionamento dei link nei nostri articoli. Se noti dei link che non funzionano segnalacelo tra i commenti. Se hai apprezzato l'articolo considera l'idea di sostenere il blog anche con una piccola donazione. Grazie. Patreon / Ko-fi / Liberapay / Paypal

2 commenti

  1. >Trovare o rimuovere tutti i FILE DOPPI con una >certa estensione

    >find . -type f -name “*.txt” -exec rm -f {} \

    Così cancella TUTTI i file *.txt: non solo i file duplicati!

    Manca il carattere ‘ ; ‘ finale: senza non funziona.

    1. Ciao Joe, il comando “find . -type f -name “*.txt” -exec rm -f {} \;” cerca tutti file con l’estensione .txt e successivamente ne elimina i duplicati, non elimina tutti i txt. Il ; era un refuso, l’ho corretto, grazie mille

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *