Skip to main content

Come trovare un file in Linux utilizzando la riga di comando

Raspberry Pi NAS file server: condividere file in rete con Samba (Linux server) (Aprile 2024)

Raspberry Pi NAS file server: condividere file in rete con Samba (Linux server) (Aprile 2024)
Anonim

In questa guida imparerai come utilizzare Linux per trovare un file o una serie di file.

È possibile utilizzare il file manager fornito con la propria distribuzione Linux per cercare i file. Se sei abituato a utilizzare Windows, un file manager è simile a Windows Explorer. Contiene un'interfaccia utente con una serie di cartelle che, se selezionate, mostrano le sottocartelle all'interno di tali cartelle e tutti i file contenuti all'interno.

La maggior parte dei gestori di file fornisce una funzione di ricerca e un metodo per filtrare l'elenco di file.

Il modo migliore per cercare i file è usare la riga di comando di Linux perché ci sono molti più metodi disponibili per cercare un file di quanto uno strumento grafico potrebbe mai tentare di includere.

Come aprire una finestra di terminale

Per cercare i file utilizzando la riga di comando di Linux, è necessario aprire una finestra di terminale.

Ci sono molti modi per aprire una finestra di terminale. Un modo che sicuramente funziona sulla maggior parte dei sistemi Linux è premere contemporaneamente i tasti CTRL, ALT e T. Se questo non riesce a utilizzare il menu sul tuo ambiente desktop Linux per trovare l'editor del terminale.

Il modo più semplice per trovare un file

Viene chiamato il comando usato per cercare i filetrova.

Ecco la sintassi di base del comando Trova.

trova

Il punto di partenza è la cartella da cui vuoi iniziare la ricerca. Per iniziare a cercare l'intero disco devi digitare quanto segue:

trova /

Se, tuttavia, vuoi iniziare a cercare la cartella in cui ti trovi, puoi utilizzare la seguente sintassi:

trova .

Generalmente, durante la ricerca si vorrà cercare per nome, quindi, per cercare un file chiamato myresume.odt attraverso l'intera unità si utilizzerà la seguente sintassi:

trova / -name myresume.odt

  • La prima parte del comando find è ovviamente la parola find.
  • La seconda parte è da dove iniziare la ricerca.
  • La parte successiva è un'espressione che determina cosa trovare.
  • Infine l'ultima parte è il nome della cosa da trovare.

Da dove iniziare la ricerca

Come menzionato brevemente nella sezione precedente, puoi scegliere qualsiasi posizione nel file system per iniziare la ricerca. Ad esempio, se si desidera cercare il file system corrente, è possibile utilizzare un punto fermo come segue:

trova . nome gioco

Il comando sopra cercherà un file o una cartella chiamato gioco in tutte le cartelle sotto la cartella corrente. È possibile trovare il nome della cartella corrente usando il comando pwd.

Se si desidera eseguire la ricerca nell'intero file system, è necessario iniziare nella cartella principale come segue:

trova / -name il gioco

È probabile che i risultati restituiti dal comando precedente mostrino il permesso negato per molti dei risultati restituiti.

Probabilmente dovrai elevare le tue autorizzazioni usando il comando sudo o passare a un account amministratore usando il comando su.

La posizione di partenza può essere letteralmente ovunque sul tuo file system. Ad esempio per cercare la cartella home, digitare quanto segue:

trova il gioco ~ -name

La tilde è un metacarattere comunemente usato per indicare la cartella home dell'utente corrente.

espressioni

L'espressione più comune che userete è -nome. L'espressione -name consente di cercare il nome di un file o una cartella.

Esistono, tuttavia, altre espressioni che puoi utilizzare come segue:

  • -amin n - Il file è stato l'ultimo accesso n minuti fa
  • -anewer - L'ultimo accesso al file è stato effettuato più recentemente rispetto a quando è stato modificato
  • -atime n - L'ultimo accesso al file è avvenuto più giorni fa
  • -cmin n - Il file è stato modificato l'ultima volta n minuti fa
  • -cnewer - Il file è stato modificato l'ultima volta più recentemente rispetto a quando il file è stato modificato
  • -ctime n - Il file è stato modificato l'ultima volta più di n giorni fa
  • -vuoto - Il file è vuoto
  • -eseguibile - Il file è eseguibile
  • ovvero falsi - Sempre falso
  • tipo -fstype - Il file si trova sul file system specificato
  • -gid n - Il file appartiene al gruppo con l'ID n
  • -gruppo nomegruppo - Il file appartiene al gruppo denominato
  • -il modello del nome - Cerca una linea simbolica ma ignora maiuscole e minuscole
  • -in modello in miniatura - Cerca un file ma ignora maiuscole e minuscole
  • -n n - Cerca un file con il nodo specificato
  • -ipath percorso - Cerca un percorso ma ignori il caso
  • -espressione di uniregex - Cerca un'espressione ma ignori il caso
  • -links n - Cerca un file con il numero specificato di link
  • -nome del nome - Cerca un collegamento simbolico
  • -mmin n - I dati del file sono stati modificati l'ultima volta n minuti fa
  • -mtime n - I dati del file sono stati modificati l'ultima volta n giorni fa
  • -nome nome - Cerca un file con il nome specificato
  • -nome nuovo - Cerca un file modificato più recentemente rispetto al file indicato
  • -nogroup - Cerca un file senza ID di gruppo
  • -nouser - Cerca un file senza utente collegato ad esso
  • percorso -path - Cerca un percorso
  • -leggibile - Trova i file che sono leggibili
  • -regex pattern - Cerca i file che corrispondono a un'espressione regolare
  • tipo di carattere - Cerca un tipo particolare
  • -sid uid - L'ID utente numerico dei file è uguale a uid
  • -nome utente - Il file è di proprietà dell'utente specificato
  • -writable - Cerca i file che possono essere scritti in

Come trovare i file accessibili più di un certo numero di giorni fa

Immagina di voler trovare tutti i file all'interno della tua cartella principale a cui si accede più di 100 giorni fa. Si consiglia di farlo se si desidera eseguire il backup e rimuovere i vecchi file a cui non si accede regolarmente.

Per fare questo, esegui il seguente comando:

trova ~ -atime 100

Come trovare file e cartelle vuote

Se vuoi trovare tutti i file e le cartelle vuoti nel tuo sistema usa il seguente comando:

trova / -empty

Come trovare tutti i file eseguibili

Se vuoi trovare tutti i file eseguibili sul tuo computer usa il seguente comando:

trova / -exec

Come trovare tutti i file leggibili

Per trovare tutti i file che sono leggibili usa il seguente comando:

trova / -read

Patterns

Quando cerchi un file puoi usare un modello. Ad esempio, forse stai cercando tutti i file con l'estensione mp3.

È possibile utilizzare il seguente modello:

trova / -name * .mp3

Come inviare l'output da Trova Il comando Trova in un file

Il problema principale con il comando find è che a volte può restituire troppi risultati da guardare in una volta sola.

È possibile reindirizzare l'output al comando tail oppure è possibile restituire le righe a un file come segue:

find / -name * .mp3 -fprint nameoffiletoprintto

Come trovare ed eseguire un comando contro un file

Immagina di voler cercare e modificare un file allo stesso tempo.

È possibile utilizzare il seguente comando:

trova / -name nomefile -exec nano '{}' ;

Il comando sopra cerca un file chiamato nomefile e quindi esegue l'editor nano per il file che trova.

Sommario

Il comando find è molto potente. Questa guida ha dimostrato come cercare i file, ma c'è un numero enorme di opzioni disponibili e per capirle dovresti dare un'occhiata al manuale di Linux.

Puoi farlo eseguendo il seguente comando nel terminale:

l'uomo trova