Come utilizzare il comando Trova in Linux per cercare i file?

Come utilizzare il comando Trova in Linux per cercare i file?
Se sei un utente Linux, non puoi semplicemente fare affidamento sulla GUI per eseguire varie attività, quindi una solida comprensione dei comandi terminale è davvero essenziale. Tutte le distribuzioni basate su Linux eseguono i comandi per eseguire diverse attività amministrative.

Sebbene il terminale Linux sia un'interfaccia di testo che sembra complessa, in realtà è molto flessibile, facile da usare e uno strumento abbastanza utile. I comandi possono essere facilmente copiati da fonti online e incollati nel terminale per eseguire varie operazioni. Ci sono tonnellate di comandi ma questo post si concentrerà sul comando "trova".

Il comando "Find" viene utilizzato per trovare file, filtrare o cercare file e cartelle nel sistema in base alle condizioni specificate dall'utente ed eseguire diverse operazioni su di esse.

Discutiamo come utilizzare il comando "trova", la sua sintassi e varie operazioni eseguite da questo comando in dettaglio.

Sintassi del comando "Find" in Linux

La sintassi del comando "Find" è mostrata di seguito:

Trova [Path] [Options] [espressione]

Tre attributi vanno con il comando "Trova":

  • [Path]: definisce la directory dove iniziare a cercare.
  • [Opzioni]: definisce i criteri di filtraggio E.G. Ricerca un file/cartella con il suo nome, autorizzazione, ora o data.
  • [espressione]: definisce quali azioni eseguire con il file.

Tutti gli attributi di cui sopra sono opzionali in quanto possono essere utilizzati in base al requisito.

Per dimostrazione, ho creato directory diverse e alcuni file di testo, consultare l'immagine qui sotto:

Trovare un file per nome

Per cercare il file per nome, utilizzare il comando di seguito:

$ Trova . -Nomina MyTextFile1.TXT

Il punto dopo "trovare" nel comando sopra indica la directory corrente.

Se non ricordi il nome del file esatto, la ricerca può essere ulteriormente perfezionata e renderlo insensibile al caso utilizzando il "-iname" al posto di "nome":

$ Trova . -Iname MyTextFile1.TXT

Trovare un file per tipo

Per trovare un file per il suo tipo, utilizzare l'opzione "-type" con lettere che sono anche note come descrittori come "F" per i file, "D" per le directory, "L" per il collegamento simbolico e "S" per prese.

Per cercare tutte le directory, utilizzare:

$ Trova . -Tipo D

Per cercare file, utilizzare:

$ Trova . -Tipo F

Trovare un file dall'estensione del file

Per cercare il file per modello, E.G., Estensione del file, come la visualizzazione di tutti i file con ".txt ”, usa il seguente comando:

$ Trova . -nome *.TXT

Tutti i file con “.txt ”verrà visualizzato insieme alle loro directory corrispondenti.

Trovare ed eliminare un file

Per cercare ed eliminare un file, utilizzare il comando di seguito:

$ Trova . -Iname MyTextFile1.txt -exec rm \;

Il comando sopra prima cerca il file e quindi eliminalo. L'immagine sta dimostrando che "mytextfile1" è stato eliminato.

Per eliminare tutti i file con estensione ".txt ”, è possibile utilizzare il comando aggiunto:

$ Trova . -nome *.txt -delete

Trovare un file per dimensione

Il comando "Find" può anche cercare un file per dimensione. Basta usare l'opzione "-ze" insieme ai suoi descrittori come "B" per blocchi da 512 kb, "c" per byte, "k" per kilobyte, "m" e "g" rispettivamente per megabyte e gigabyte:

$ Trova . -Tipo F -Mize -1024c

Il comando sopra menzionato cerca tutti i file con una dimensione inferiore a 1024 byte. La ricerca può essere ulteriormente perfezionata, ad esempio, se vogliamo trovare tutti i file che sono inferiori a 1 MB, utilizziamo il comando di seguito:

$ Trova . -Tipo F -Mize 1m

Per tutti i file che sono superiori a 1 MB, utilizzare il comando di seguito:

$ Trova . -Tipo F -Mize +1m

È inoltre possibile definire una gamma di dimensioni, utilizzando il comando aggiunto:

$ Trova . -Tipo F -Mize +1M -Mize 10m

Trovare i file per autorizzazione

Per cercare un file per autorizzazione, utilizzeremo l'opzione "-perm", quindi il codice di autorizzazione, come dimostrato di seguito:

$ Trova . -Perm 664

Trova un testo all'interno di file di testo

Per trovare il testo in più file di testo nel sistema, S usa il comando indicato di seguito:

$ Trova . -tipo f -name *.txt -exec grep 'hello' \;

Il comando sta cercando la parola "ciao" nei file di testo. L'output è stringhe di testo dai file di testo contenenti "ciao".

Trovare un file per data e ora di modifica

Per accedere a un file mediante la sua ultima modifica, utilizzare il comando di seguito:

$ Trova . -tipo f -iname *.txt -mmin +10

Il comando sopra è alla ricerca di un file per l'ultimo modificato quattro minuti fa e "M" indica la "modifica".

$ Trova . -tipo f -iname *.txt -amin -10

Il comando sopra è alla ricerca di un file ad accesso ultimo 4 minuti fa e la "A" in "amin" significa "accesso". Per accedere a un file che è stato modificato giorni fa, utilizzare "-mtime +4" al posto di "Mmin +4".

Conclusione

Il comando "Find" in Linux è un comando molto utile che consente di cercare un file o una directory utilizzando criteri diversi e persino consente di modificare i file dal terminale. In questa guida, abbiamo osservato la sintassi del comando "Trova" in Linux e abbiamo imparato come utilizzare il comando "Trova" per eseguire varie funzioni.