GNU/Linux >> Linux Esercitazione >  >> Linux

Cerca rapidamente i file in Linux con il comando Locate

Come suggerisce il nome, il comando locate in Linux viene usato per localizzare (cercare) un file. Ha la seguente sintassi:

locate [options] filename

Sebbene sia davvero semplice usare il comando locate, viene fornito con molti se e ma. Per cominciare, se non trova un file, non significa necessariamente che il file non esiste sul sistema.

Non essere confuso proprio ora. Spiegherò come funziona il comando locate e come puoi usarlo per trovare file.

Utilizzo del comando locate in Linux

Il comando locate funziona su un indice, ovvero un database di percorsi di file. Quando usi il comando, fa riferimento a questo indice invece di cercare nell'intero filesystem. Questo è il motivo per cui locate è super veloce nel trovare i file in Linux.

Alcune distribuzioni Linux indicizzano automaticamente l'intero filesystem su base regolare. Puoi anche creare manualmente questo indice (te lo mostrerò più avanti in questo articolo).

Usare il comando locate è semplicissimo. Devi solo specificare il nome del file:

locate filename

Il risultato mostrerà tutte le posizioni in cui è stato trovato il file specificato.

[email protected]:~$ locate desktop.iso
/home/abhishek/desktop.iso

La parte migliore è che non è necessario trovarsi in una determinata directory per trovare il file. Ricorda, il comando locate non cerca nel filesystem ma nell'indice. Questo è il motivo per cui non è necessario specificare un percorso o una directory durante la ricerca di file.

Puoi anche eseguire una ricerca senza distinzione tra maiuscole e minuscole utilizzando l'opzione -i:

[email protected]:~$ locate -i desktop.iso
/home/abhishek/desktop.iso
/home/abhishek/Downloads/Desktop.iso

Tieni presente che il risultato potrebbe mostrare tutti i file che hanno il termine di ricerca nel loro nome.

[email protected]:~$ locate -i desktop
/home/abhishek/eoan-desktop-amd64.iso
/home/abhishek/Bionic-Desktop-amd64.iso
/home/abhishek/desktop.iso
/home/abhishek/Downloads/Desktop.iso

Puoi anche usare regex con locate:

locate -r regex_expression

Utilizzo di updateb per creare il proprio indice per il comando locate

Questo è solo a scopo informativo e non credo che avresti bisogno di usarlo.

Se vuoi creare un indice della directory attuale (e delle sue sottodirectory), puoi usare il comando updateb in questo modo:

updatedb -l0 -U my_directory -o index_file

Dopo aver creato questo file di indice, puoi chiedere al comando locate di utilizzare esplicitamente questo indice:

locate -d index_file file_name

Localizza è migliore del comando trova?

Se vuoi cercare file in una struttura di directory che non cambia molto, il comando locate è una buona opzione. È anche super veloce.

Ma il comando trova ti offre molte opzioni, specialmente per eseguire opzioni di ricerca complesse.

Entrambi i comandi hanno il loro utilizzo. A mio parere, se ti senti pigro e desideri un risultato rapido, usa locate. Se il risultato non è di tuo gradimento, passa al comando trova.

Cosa ne pensi?


Linux
  1. Suggerimenti per elencare i file con ls nella riga di comando di Linux

  2. Come trovare file in Linux con il comando Trova

  3. 5 strumenti da riga di comando per trovare rapidamente file in Linux

  4. Cerca file con Gui?

  5. Usa Trova e trova per cercare file in Linux

Comando ls in Linux per elencare i file

Come cercare file dalla riga di comando di Linux

Come trovare file con il comando fd in Linux

Linux cerca la stringa nelle cartelle e nei file con ack

lsof Command in Linux con esempi

Comando di comunicazione Linux con esempi