GNU/Linux >> Linux Esercitazione >  >> Ubuntu

3 modi per trovare file e directory in Linux

Questo articolo spiega come trovare file e directory in Linux. Useremo il comando locate, find e grep. Ogni comando è discusso in dettaglio di seguito.

Abbiamo utilizzato Ubuntu 20.04 LTS per dimostrare il processo.

Utilizzo del comando Localizza per trovare file e directory in Linux

Il comando locate offre risultati più rapidi poiché legge il database mlocate.db che contiene tutti i percorsi dei file nel tuo sistema.

Installa localizzare

Se ricevi il messaggio di seguito, devi installare locate.

Il comando per l'installazione di locate è:

sudo apt-get install mlocate

Il primo passo è inserire la tua password. Una volta inserita la password, l'installazione inizia.

È necessario aggiornare il database di ricerca dopo l'installazione. Poiché locate si basa su questo database, è necessario aggiornarlo regolarmente per garantire l'efficienza. Sono necessari i privilegi di superutente per aggiornare il database mlocate.

sudo updatedb

Ricerca di file utilizzando il nome file

Per cercare i file usando i loro nomi, usa il seguente comando:

locate {filename}

Cercheremo un file chiamato "textfile.txt", quindi il comando sarà:

locate textfile.txt

Il risultato sarà il percorso in cui si trova il file.

Ignora la distinzione tra maiuscole e minuscole

Per impostazione predefinita, individua le query dei processi facendo distinzione tra maiuscole e minuscole, il che significa che textfile.txt e TEXTFILE.TXT punteranno a risultati di ricerca diversi.

Come puoi vedere, non è stato possibile individuare TEXTFILE.TXT.

Puoi ignorare la distinzione tra maiuscole e minuscole utilizzando –i opzione. Il comando è:

locate –i {file name}

Come puoi vedere, il file è stato individuato.

Utilizzo del comando find per trovare file e directory in Linux

Rispetto a localizzare, trova è molto più potente, ma più lento. È più lento perché cerca i file nel disco. Ciò che rende fantastico trovare è che puoi trovare file e directory in Linux in base a gruppi di utenti, quando i file sono stati modificati o consultati, autorizzazioni, date e dimensioni dei file.

Ricerca di file nella directory corrente

Puoi visualizzare tutti i file con un nome particolare nella directory corrente utilizzando il seguente comando:

find . -name {filename}

Vedrai tutti i file che hanno il nome “textfile.txt” nella directory corrente.

Ricerca di file nella home directory

Per cercare i file nella tua home directory, usa /home . Il comando sarà:

find /home -name {filename}

Vedrai tutti i file denominati Hello.txt nella tua home directory.

Ignora la distinzione tra maiuscole e minuscole

Per impostazione predefinita, trova elabora le query facendo distinzione tra maiuscole e minuscole, il che significa che hello.txt e Hello.txt punteranno a risultati di ricerca diversi.

Come puoi vedere, non è stato possibile trovare hello.txt.

Per ignorare la distinzione tra maiuscole e minuscole, utilizzare il comando seguente:

find –iname {file name}

Come puoi vedere nell'immagine qui sotto, hello.txt è stato individuato.

Trova usando i caratteri jolly

È possibile utilizzare i caratteri jolly per cercare file in base a determinati criteri. L'asterisco (* ) il carattere jolly ti consente di abbinare le istanze di un carattere.

L'esempio seguente utilizza i seguenti comandi:

find . –name ‘*he’

Questo comando elenca tutti i nomi di file che terminano con 'he'

find . –name ‘he*’

Questo comando elenca tutti i nomi di file che iniziano con "he"

Trova utilizzando la dimensione del file

Per trovare i file in base alle dimensioni, usa:

find –size {filesize} –type f

Questo comando cerca i file che hanno una dimensione di 68 byte.

Per cercare file più grandi o più piccoli di una determinata dimensione, aggiungi "+ ” o “ ” rispettivamente al tuo comando.

find –size -{filesize} –type f

L'esempio seguente cerca file di dimensioni inferiori a 512 byte.

Questo comando cerca i file maggiori di 512 byte.

Trova i file in base a quando sono stati modificati l'ultima volta

Usa il comando seguente per cercare i file in base a quando sono stati modificati l'ultima volta:

find -iname "*.txt" -mtime -60

Questo comando cerca i file che sono stati modificati negli ultimi 60 giorni.

Trova directory

Per trovare una directory, usa il comando:

find –name “{file name}” –type d

Di conseguenza puoi vedere il percorso della directory.

Trova file di sola lettura

Per trovare file di sola lettura, usa il comando

find / -perm /u=r

Puoi vedere tutti i file di sola lettura nel terminale.

Utilizzo del comando Grep per trovare file e directory in Linux

Grep, Global Regular Expression Print viene utilizzato in Linux per trovare stringhe in un particolare file. Se grep trova quei caratteri, stampa la riga. Il comando è:

grep {string} {file name}

Nell'esempio seguente, cercheremo la stringa "is" nel file "textfile.txt". Puoi vedere le righe che contengono la "è".

Stampa i numeri di riga

Stampi i numeri di riga insieme alla stringa corrispondente usando:

grep {string} {filename} –n

L'esempio seguente stampa il numero di riga in cui si trova la stringa "is".

Inverti corrispondenza

Questa opzione ti consente di stampare le linee che non corrispondono al motivo inserito.

grep {string} {file name} –v

L'esempio seguente stampa la riga del file di testo “textfile.txt” che non contiene “is”.

Ignora la distinzione tra maiuscole e minuscole

Per impostazione predefinita, grep elabora le query con distinzione tra maiuscole e minuscole, il che significa che è e IS punterà a risultati di ricerca diversi.

Come puoi vedere, non è stato possibile trovare "IS".

Usa il comando seguente per ignorare maiuscole e minuscole:

grep {string} {file name} –i

Ricerca ricorsiva

Grep non ti consente di cercare nelle directory, per impostazione predefinita. Viene visualizzato il seguente errore:

Puoi cercare all'interno delle directory usando:

grep {string} . –R

L'esempio seguente cerca la stringa "some" nella directory corrente.

In questo articolo, abbiamo visto come funzionano locate, find e grep per trovare file e directory in Linux. Abbiamo anche esaminato alcuni casi su come vengono utilizzati.


Ubuntu
  1. Trova file e directory su Linux con il comando find

  2. Trova file e directory in Linux come un professionista

  3. Trova i file e le directory più grandi in Linux

  4. Comandi di ricerca di Linux

  5. Trova e copia i file

Come comprimere file e directory in Linux

I 3 migliori strumenti per trovare ed eliminare file duplicati in Linux

Come trovare ed eliminare directory vuote in Linux

Come rinominare file e directory in Linux

Trova facilmente file e directory su Linux

4 modi per trasferire file e directory su Linux