GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Trovare file nella riga di comando (come fare per)

Purtroppo in Linux, certamente Ubuntu, la ricerca di file della GUI predefinita non è il modo più utile per trovare i file.

Con solo un po' di pazienza puoi trovare i file in modo rapido e semplice usando la riga di comando e le tue opzioni per questo sono davvero potenti se vuoi saperne un po'.

Trova

Il comando facile e veloce si chiama “trova”. Per utilizzare questo comando da terminale è sufficiente digitare:

$ locate -i searchstring

Questo cercherà tutti i file e le directory con "searchstring" nel nome e -i significa che la ricerca non fa distinzione tra maiuscole e minuscole (ovvero troverà stringa di ricerca, stringa di ricerca, ricerca e così via).

I risultati sono istantanei perché il sistema ha creato un database (noto anche come indice) per dirti dove si trovano i file. L'unico problema è che i file appena creati o spostati potrebbero non essere trovati correttamente fino al prossimo aggiornamento del database e non hai molte opzioni tra cui scegliere per la tua ricerca.

La forzatura di locate per aggiornare il database/l'indice viene eseguita con sudo updatedb   e non ci vuole molto tempo.

Esempio:

$ locate -i omgubuntu.desktop

Trova

C'è un comando molto più potente a tua disposizione chiamato "trova".

Puoi dire a "trova" dove cercare, quali criteri utilizzare nella sua ricerca e quali azioni intraprendere una volta trovato ciò che stai cercando.

La sintassi per "trova" è:

$ find <where to start searching> <search criteria> <actions to take>

Se non aggiungi alcun parametro, find eseguirà automaticamente la ricerca nella directory di lavoro corrente (o ". "), non utilizza criteri di ricerca (l'impostazione predefinita mostra tutti i file) e -print (che, nonostante il nome, visualizza o "stampa" i risultati sullo schermo) come unica azione da intraprendere.

Due esempi:

 $ sudo find / -type f -mmin -10

Questo esempio troverà (a partire dalla directory principale, o /, e cercherà ricorsivamente nelle sottodirectory) tutti i file normali (-type f significa file normali, senza questo troverà file normali + file speciali + directory) che sono stati modificati meno di dieci minuti fa (-mmin -10), e quindi visualizzerà i risultati per te.

Ciò sarebbe utile se sai di aver modificato un file di recente ma non sai dove lo hai inserito o se devi trovare un file di registro per un programma che si è bloccato.

Puoi aggiungere sudo qui perché trova non cerca file/directory per cui l'utente corrente non dispone delle autorizzazioni e restituirà messaggi di errore se non sei un sudoer — fai attenzione!

 $ find ~ -iname "*new*" -exec mv -v {} /media/current-projects/ \;

Questo troverà tutto nella tua directory home (~) con un nome, senza distinzione tra maiuscole e minuscole (-iname), contenente new ("*new*") ed eseguirà (-exec) uno spostamento (mv) dei risultati ({}) in /media/current-projects/ ( \; è richiesto da -exec per mostrare la fine del comando da eseguire). Quindi tutti i tuoi file verranno spostati nello stesso posto. mv -v mostra i risultati del comando di spostamento con messaggi (-v)erbose.

Un altro avviso con -exec, sebbene sia potente, se usato senza cura puoi sovrascrivere l'intera home directory o l'intero disco, quindi fai attenzione!

Catfish è un'opzione GUI

Per quelli di voi che semplicemente non possono fare a meno di una GUI, è possibile trovare il programma Catfish nei repository:ciò consente di eseguire entrambi locate e find da un front-end grafico, ma è molto limitato nelle opzioni.

Pensa a Catfish come equivalente a Windows Search. Se desideri la piena potenza di ricerca, dovrai eseguirlo dalla riga di comando, utilizzando i suggerimenti rapidi sopra.

Installa Catfish dal software Ubuntu

Quale metodo preferisci per la ricerca dei file? Rispondi di seguito e lo farò $ grep Nixie * più tardi.;-)


Ubuntu
  1. Come trovare file in CentOS 8 sulla riga di comando

  2. Come disattivare l'audio dalla riga di comando?

  3. Come trovare tutti i file relativi a un software?

  4. Come faccio a scaricare i file dalla riga di comando usando il comando wget?

  5. Come trovare il numero di core in Ubuntu

Come trovare file con il comando fd in Linux

Trova la riga di comando?

Come trovare l'indirizzo IP nella riga di comando di Linux

Trovare i file e le cartelle più grandi nella riga di comando di Linux

Come trovare le cartelle in Linux

Come scoprire le directory o i file che consumano più spazio?