Trova un file in linux

Trovare un file in un sistema Linux può essere complicato se non sai come farlo. Il modo migliore per trovare i file è utilizzare diversi comandi del terminale. Padroneggiare questi comandi può darti il ​​controllo completo dei tuoi file e sono molto più potenti delle semplici funzioni di ricerca di altri sistemi operativi.

Passi

Metodo 1 di 3: Utilizzo "trovare"

Immagine titolata 690519 1
1. Cerca un file in base al nome del file. Questa è la ricerca più semplice che puoi eseguire con il trovare-comando. Il comando seguente cercherà la directory corrente e tutte le sottodirectory in base alla query.
trova -iname "nome del file"
  • Utilizzo -assunzione invece di -nome ignorare le lettere maiuscole. Esso -nome-il comando fa distinzione tra maiuscole e minuscole.
Immagine titolata 690519 2
2. Imposta una ricerca per cercare nella directory principale. Se si desidera effettuare una ricerca nell`intero sistema, è possibile utilizzare il parametro / aggiungi alla ricerca. Con questo chiedi trovare per cercare tutte le directory, a partire da root.
trova / -iname "nome del file"
  • È possibile avviare la ricerca in una directory specifica tramite / sostituire con un percorso di directory, ad esempio /casa/pat.
  • Puoi . utilizzare, invece di /, per forzare l`esecuzione della ricerca solo nella directory e nelle sottodirectory correnti.
    Immagine titolata 690519 3
    3. Usa il carattere jolly .*per cercare qualsiasi cosa che corrisponda a qualsiasi parte della query. il burlone * può essere utile per trovare qualcosa, se non ricordi il nome completo, o se vuoi trovare tutto con una certa estensione.
    trova /home/peter -iname "*.conf"
  • Questo restituisce tutto .conf nella directory utente di Peter (e nelle sottodirectory).
  • Puoi anche usarlo per trovare qualsiasi cosa che corrisponda a parte del nome del file. Ad esempio, se hai molti documenti relativi a wikiHow, puoi trovarli tutti digitando "*wiki*".
    Immagine titolata 690519 4
  • 4. Semplifica la gestione dei risultati della tua ricerca. Se ottieni molti risultati di ricerca, può essere difficile guadare. Usa il segno | e inoltra i risultati della ricerca a "a partire dal"-programma di filtraggio. Questo può rendere molto più semplice lo scorrimento e il filtraggio dei risultati.
    trova /home/pat -iname "*.conf" | meno
    Immagine titolata 690519 5
    5. Trova tipi specifici di risultati. È possibile utilizzare i parametri per mostrare solo determinati risultati. Puoi cercare file regolari (F), directory` (D), collegamenti simbolici (l), dispositivi a caratteri (C) e dispositivi di blocco (B), utilizzando il parametro appropriato.
    trova / -digita f -iname "nome del file"
    Immagine titolata 690519 6
    6. Filtra i risultati della ricerca per dimensione. Se hai molti file con nomi simili, ma conosci la dimensione approssimativa del file, puoi ridurre i risultati filtrando per dimensione.
    trova / -dimensione +50M -iname "nome del file"
  • Ciò restituisce risultati su file di dimensioni superiori a 50 megabyte. Puoi+ o - utilizzare per cercare file più o meno grandi. lascia che tu + o - via, quindi inizierà a cercare i file da Esattamente la dimensione specificata.
  • Puoi filtrare per byte (C), kilobyte (K), megabyte (m), gigabyte (G) o blocchi da 512 byte (B). Nota che il flag della dimensione fa distinzione tra maiuscole e minuscole.
    Immagine titolata 690519 7
    7. Usa gli operatori logici per combinare diversi filtri di ricerca. Puoi usare il -e, -o e -non operatori, per combinare contemporaneamente diversi tipi di ricerca.
    trova /reisfotos -type f -size +200k -non -iname "*2015*"
    Il comando troverà i file nella cartella "foto di viaggio" che sono più grandi di 200 kilobyte, ma senza "2015" nel nome del file.
    Immagine titolata 690519 8
    8. Cerca i file per proprietario o permessi. Se stai cercando un file specifico di proprietà di un utente o file con autorizzazioni specifiche, puoi restringere ulteriormente la ricerca.
    trova / -user pat -iname "nome del file" trova / -gruppi utenti -iname "nome del file" trova / -perm 777 -iname "nome del file"
    Cerca negli esempi precedenti utenti, gruppi o autorizzazioni specifici. Puoi anche omettere il nome del file per restituire tutti i file che corrispondono a quel tipo. Ad esempio, trova / -perm 777 restituisce tutti i file con 777 permessi (nessuna restrizione).
    Immagine titolata 690519 9
    9. Combina i comandi per eseguire azioni quando vengono trovati i file. Puoi usare il comando trovare combinare con altri comandi in modo da poterli eseguire sui file risultanti dalla query. Separare il comando trovare e il secondo comando con il -es-flag e termina la linea con {} ;
    trovare . -digita f -perm 777 -exec chmod 755 {} ;
    Cerca nella directory corrente (e in tutte le sottodirectory) i file con autorizzazioni 777. Dopo diventa chmod-comando utilizzato per modificare i permessi in 755.

    Metodo 2 di 3: Utilizzo "individuare"

    Immagine titolata 690519 10
    1. Installa il .individuare-funzione. Il comando individuare generalmente funziona molto più velocemente di trovare, perché usa un database della tua struttura di file. Non tutte le distribuzioni Linux includono questa funzionalità per impostazione predefinita, quindi inserisci i seguenti comandi per installarla, se puoi:
  • genere sudo apt-get update e premere ↵ Entra.
  • Puoi installarlo in Debian e Ubuntu, nel modo seguente: Digitare sudo apt-get install mlocate e premere ↵ Entra. Se individuare è già stato installato, riceverai il messaggio mlocate è già la versione più recente da vedere.
  • In Arch Linux usi il gestore di pacchetti pacman: pacman-Syu mlocate
  • Per Gentoo, usa emerge: emerge mlocare
  • Immagine titolata 690519 11
    2. aggiornati .individuareBanca dati. Esso individuare- comando non troverà nulla fino a quando un database non sarà compilato e aggiornato. Questo viene fatto ogni giorno, ma puoi anche eseguirlo manualmente. Dovrai farlo prima se lo fai immediatamente individuare vuoi iniziare a usare.
    genere sudo aggiornatob e premere ↵ Entra.
    Immagine titolata 690519 12
    3. Utilizzo .individuareper eseguire semplici ricerche.individuare è veloce, ma non ha tante opzioni come trovare. Puoi farlo allo stesso modo di trovare fai una semplice ricerca.
    individuare -i "*.jpg"
  • Questo comando cerca nell`intero sistema i file con l`estensione .jpg. il burlone * funziona allo stesso modo di trovare.
  • Così come il comando trovare, deve -io ignorare la maiuscola della query.
    Immagine titolata 690519 13
  • 4. Limita i risultati della tua ricerca. Se le tue ricerche restituiscono troppi risultati da utilizzare, puoi ridurlo con l`opzione -n, seguito dal numero di risultati che si desidera visualizzare.
    individuare -n 20 -i "*.jpg"
  • Verranno visualizzati solo i primi 20 risultati che corrispondono alla query.
  • Puoi anche usare il segno | utilizzare per inviare i risultati attraverso le cateratte a meno per uno scorrimento più facile.

    Metodo 3 di 3: ricerca del testo nei file

    Immagine titolata 690519 14
    1. Usa il comando .grepper cercare le stringhe nei file. Se stai cercando un file che contenga un determinato testo o stringa, puoi utilizzare il comando grep uso. Un semplice grep- comando è costruito nel modo seguente:
    grep -r -i "query di ricerca" /percorso/della/directory/
  • -R imposta la ricerca su "ricorsivamente", in modo che cerchi nella directory corrente e in tutte le sue sottodirectory un file contenente la stringa di query.
  • -io significa che la query non fa distinzione tra maiuscole e minuscole. Se si desidera forzare la ricerca con distinzione tra maiuscole e minuscole, lasciare il parametro -io lontano.
  • Immagine titolata 690519 15
    2. Ometti testo extra. Quando tu grep utilizzato per una ricerca, come sopra indicato, vedrai il nome del file, insieme al testo e alla query corrispondente, entrambi enfatizzati. Puoi nascondere il testo corrispondente e mostrare solo i nomi dei file insieme ai percorsi, aggiungendo quanto segue:
    grep -r -i "query di ricerca" /percorso/della/directory/ | taglia -d: -f1
    Immagine titolata 690519 16
    3. Nascondi i messaggi di errore. Il comando grep restituirà un errore se tenta di accedere alle directory senza l`autorizzazione richiesta o se incontra directory vuote. Puoi inoltrare i messaggi di errore a /dev/null, che impedirà loro di apparire nei risultati della ricerca.
    grep -r -i "query di ricerca" /percorso/della/directory/ 2>/dev/null

  • Condividi sui social network: