Vuoi sapere come eseguire ricerche utilizzando i comandi Linux? Allora sei nel posto giusto!
In questo articolo parleremo della trova di Linux e individuare comandi, che ti aiuteranno a cercare qualsiasi file sulla tua macchina.
Perché usare i comandi Trova e individua in Linux?
I nuovi utenti Linux spesso affermano di essere confusi sulla posizione dei loro file su un server. Ciò potrebbe essere dovuto al fatto che la maggior parte delle persone è abituata a utilizzare Windows o macOS, che hanno layout di directory più chiari e di facile utilizzo.
Sebbene ci sia del vero in questo, Linux offre agli utenti più opzioni su come cercare file utilizzando determinati comandi. Oltre alla ricerca basata su filtri comuni, puoi anche trovare i file in base alle autorizzazioni utente, alle dimensioni, ai timestamp e così via.
La cosa fantastica, una volta compresi i comandi, la ricerca di file sulla tua piattaforma Linux è sorprendentemente facile.
Per farlo, utilizzeremo il trova e individuare comandi in Linux.
Una cosa importante da notare è che useremo Ubuntu VPS in questa guida. Detto questo, i passaggi dovrebbero funzionare anche per Debian, CentOS o qualsiasi altra distribuzione di Linux. Se non sai come connetterti al VPS, puoi seguire questa guida prima di procedere oltre.
Utilizzo del comando Trova in Linux
Per prima cosa, spieghiamo il trova comando e come usarlo.
La sintassi di base
Il comando più diffuso per trovare e filtrare i file su Linux è trova . La sintassi di base è la seguente:
find <startingdirectory> <options> <search term>
Inizia con la parola chiave trova , che avvisa Linux che tutto ciò che segue verrà utilizzato per trovare il tuo file. La
- / (barra) — cerca nell'intero sistema.
- . (punto) — cerca dalla cartella su cui stai attualmente lavorando (directory corrente).
- ~ (tilde) — per cercare dalla tua cartella Inizio.
Il secondo argomento
Modi per utilizzare trova comando
Diamo un'occhiata alle varie opzioni che Linux offre ai suoi utenti:
Ricerca per nome
Naturalmente, il metodo più comune per cercare un file è usare il suo nome. Per eseguire una semplice query di ricerca utilizzando il nome del file, utilizza trova comando in questo modo:
find . -name my-file
Abbiamo usato il -nome opzione e cercato un file chiamato il mio-file . Nota che abbiamo avviato la ricerca nella nostra directory corrente utilizzando il . (punto) argomento.
Tieni presente che il -nome argomento cerca i termini con distinzione tra maiuscole e minuscole in Linux. Se conosci il nome del file, ma non sei sicuro della sua distinzione tra maiuscole e minuscole, utilizza il seguente trova comando:
find . -iname my-file
Puoi anche cercare tutti i file senza una determinata parola chiave nel loro nome. Ci sono due modi per farlo. Il primo metodo prevede l'utilizzo di –non parola chiave nel modo seguente:
find . -not -name my-file
In secondo luogo, possiamo usare il simbolo esclamativo (! ). Tuttavia, deve essere preceduto dall'identificatore di escape (\) per far sapere a Linux che questa è la parte del trova comando.
find . \! -name my-file
Puoi cercare più file con un formato comune come .txt anche:
find . -name “*.txt”
Questo elencherà tutti i file di testo che iniziano con la cartella corrente.
Infine, se vuoi trovare un determinato file per nome e rimuoverlo, usa il -delete argomento dopo il nome del file:
find . -name my-file -delete
Ricerca per tipo
Linux consente agli utenti di elencare tutte le informazioni in base ai loro tipi. Esistono diversi filtri che puoi utilizzare:
- d – directory o cartella
- f – file normale
- l – collegamento simbolico
- c – dispositivi a caratteri
- b – bloccare i dispositivi
Un semplice esempio di utilizzo di un tipo di file può essere visto di seguito:
find / -type d
Questo elencherà tutte le directory correnti nel tuo sistema da quando abbiamo cercato dalla nostra directory principale con il simbolo / (barra).
Puoi anche combinare il –tipo e -nome opzioni per restringere ulteriormente le ricerche:
find / -type f -name my-file
Questo cercherà i file denominati mio-file , esclusi directory o collegamenti.
Ricerca per ora
Se si desidera cercare i file in base a quando sono stati consultati e ai tempi di modifica. Linux tiene traccia dei file utilizzando questi tre timestamp.
- Tempo di accesso (-tempo ) – quando il file è stato letto o scritto.
- Tempo di modifica (-mtime ) – quando il file è stato modificato.
- Cambia ora (-ctime ) – quando i metadati del file sono stati aggiornati.
Questa opzione deve essere utilizzata con un numero che specifica quanti giorni sono trascorsi dall'accesso, dalla modifica o dalla modifica del file:
find / -atime 1
Questo comando mostrerà tutti i file a cui è stato effettuato l'accesso un giorno fa a partire dall'ora corrente.
Possiamo restringere ulteriormente le nostre domande aggiungendo più (+ ) e meno (–) segni che precedono il numero dei giorni. Ad esempio:
find / -mtime +2
Elenca tutti i file che hanno un'ora di modifica di più di due giorni fa.
Per trovare tutti i file i cui metadati sono stati aggiornati meno di un giorno fa, esegui quanto segue:
find / -ctime -1
Sebbene non siano usati spesso, ci sono alcuni argomenti aggiuntivi che sono anche correlati alle ricerche temporizzate. Il -mmin argomento cerca i file modificati su base minuto. Può essere utilizzato in questo modo:
find / -mmin -1
Inoltre, abbiamo il -newer argomento, che può essere utilizzato per confrontare l'età di due o più file e visualizzare quello più recente.
find / -newer my-file
Quello che otterrai sono tutti i file che sono stati modificati più di recente rispetto al tuo file.
Ricerca per dimensione
Linux ti consente di cercare i file in base alle loro dimensioni. La sintassi per la ricerca dei file per dimensione è:
find <startingdirectory> -size <size-magnitude> <size-unit>
È possibile specificare le seguenti unità di misura:
- c – byte
- k – kilobyte
- M – megabyte
- G – gigabyte
- b – Blocchi da 512 byte
Un semplice esempio di come utilizzare il trova il comando per le dimensioni dei file è il seguente:
find / -size 10M
Qui cerchiamo tutti i file nel tuo sistema che sono esattamente 10 megabyte. Proprio come quando cerchi in base al tempo, puoi filtrare ulteriormente le tue ricerche utilizzando i segni più e meno:
find / -size +5G
Verranno visualizzati tutti i file di dimensioni superiori a cinque gigabyte.
Ricerca per proprietà
Linux ti dà la possibilità di restringere le tue ricerche in base alla proprietà dei file. Per trovare i file di un determinato proprietario, è necessario eseguire il seguente comando:
find / -user john
Lo script restituirà un elenco di tutti i file che l'utente ha chiamato john possiede. Simile ai nomi utente, possiamo anche trovare i file attraverso i nomi dei gruppi:
find / -group classroom
Ricerca per autorizzazioni
Gli utenti possono cercare i file in base alle autorizzazioni dei file utilizzando -perm opzione. Ad esempio:
find / -perm 644
In Linux, 644 corrisponde al permesso di lettura e scrittura. Ciò significa che questo comando cercherà tutti i file che hanno solo permessi di lettura e scrittura. Puoi giocare ulteriormente con questa opzione:
find / -perm -644
Con l'aggiunta di un trattino, tornerà con tutti i file che hanno almeno 644 autorizzazioni.
Sentiti libero di leggere di più sui permessi e vari codici corrispondenti ad altri permessi Linux.
Altre opzioni utili
Ci sono altre opzioni utili che dovresti ricordare.
Ad esempio, per cercare file e cartelle vuoti sul tuo sistema, usa quanto segue:
find / -empty
Allo stesso modo, per cercare tutti gli eseguibili salvati sul tuo disco, utilizza -exec opzione:
find / -exec
Per cercare file leggibili, puoi eseguire il seguente comando:
find / -read
Come puoi vedere, ci sono un sacco di opzioni a disposizione degli utenti per personalizzare le loro query come desiderano. Diamo un'occhiata all'altro comando che può essere utilizzato per individuare i file in Linux.
Utilizzo del comando di localizzazione in Linux
La posizione comando è un'utile alternativa, in quanto è più veloce di trova comando durante le ricerche. Questo perché il primo scansiona solo il tuo database Linux invece dell'intero sistema. Inoltre, la sintassi è relativamente più facile da scrivere.
Come installare il pacchetto locate
Per impostazione predefinita, Linux non viene fornito con localizza comando preinstallato. Per ottenere il pacchetto, esegui i seguenti comandi uno dopo l'altro:
sudo apt-get update sudo apt-get install mlocate
La sintassi di base
Ora puoi usare il comando per cercare i file usando questa sintassi:
locate [my-file]
La vaniglia individuare il comando a volte può restituire file che sono stati eliminati, se il database non è stato aggiornato. La soluzione migliore è aggiornare manualmente il database eseguendo quanto segue:
sudo updatedb
Come utilizzare il comando di localizzazione di Linux
Condivideremo con te le applicazioni più comuni di Linux localizza comando.
Cerca nome file esatto
La sintassi di base consente solo di cercare i file che contengono il termine di ricerca. Se vuoi ottenere il file con il nome esatto, puoi usare -r opzione e aggiungi il simbolo del dollaro ($ ) alla fine del termine di ricerca, ad esempio:
locate -r my-file$
Conta il numero di file
Per sapere quanti file compaiono nei risultati di ricerca, inserisci -c dopo il comando di localizzazione.
locate -c my-file
Invece di elencare tutti i file, ti darà il numero totale di essi.
Ignora maiuscole e minuscole
Usa -i sul tuo Linux individua comando per ignorare i file con distinzione tra maiuscole e minuscole. Ad esempio:
locate -i my-file
Verranno mostrati tutti i file con questo nome, indipendentemente da eventuali simboli maiuscoli o minuscoli trovati.
Mostra file esistenti
Proprio come abbiamo accennato, Linux localizza comando può anche mostrarti un file cancellato se non hai aggiornato il database. Per fortuna, puoi aggirare questo problema utilizzando -e opzione, in questo modo:
locate -e my-file
In questo modo, otterrai solo i file esistenti nel momento in cui esegui la localizzazione comando.
Disabilita gli errori durante la ricerca
-q opzione impedirà la visualizzazione di eventuali errori durante l'elaborazione della ricerca. Per fare ciò, inserisci semplicemente:
locate -q my-file
Limita il numero di risultati di ricerca
Se desideri limitare il numero di risultati di ricerca, -n
locate my-file n 10
Lo script visualizzerà solo i primi 10 file che scopre anche quando ce ne sono di più.
Conclusione
Puoi cercare i file sul tuo server utilizzando trova e individuare comandi in Linux. Questi due potenti strumenti hanno i loro vantaggi. Pertanto, ti invitiamo a provare entrambi e vedere quale è più adatto a te. Ecco un breve riassunto di ciò di cui abbiamo parlato:
- Usa trova per cercare i file in base a nome, tipo, ora, dimensione, proprietà e autorizzazioni, oltre ad alcune altre utili opzioni
- Installa e usa Linux localizza comando per eseguire ricerche di file più veloci a livello di sistema. Ti consente anche di filtrare per nome, distinzione tra maiuscole e minuscole, cartella e così via.
Se hai domande, sentiti libero di chiedere nei commenti!