Come trovare un file in Linux

Autore: Ellen Moore
Data Della Creazione: 17 Gennaio 2021
Data Di Aggiornamento: 29 Giugno 2024
Anonim
Comando Find Linux - Cercare file e directory da terminale
Video: Comando Find Linux - Cercare file e directory da terminale

Contenuto

Trovare un file su un sistema Linux è abbastanza difficile se non sai come farlo. È meglio usare comandi diversi che vengono immessi nel Terminale. Avendo padroneggiato tali comandi, avrai il controllo completo sui file; inoltre, questi comandi sono più funzionali di motori di ricerca simili in altri sistemi operativi.

Passi

Metodo 1 di 3: l'utilità di ricerca

  1. 1 Trova il file in base al suo nome. Una ricerca così semplice viene eseguita utilizzando l'utilità Trovare... Il comando seguente cercherà un file nella directory corrente e in tutte le sue sottodirectory.

    trova -iname "nome file"

    • accedere -nomino invece di -nomeper ignorare le maiuscole nel nome del file inserito. Squadra -nome fa distinzione tra maiuscole e minuscole.
  2. 2 Inizia la ricerca nella directory principale. Per avviare una ricerca a livello di sistema, aggiungi il modificatore alla query /... In questo caso, il comando Trovare cercherà il file in tutte le directory a partire dalla radice.

    trova / -iname "nome file"

    • Puoi iniziare la ricerca in una directory specifica; per fare questo, sostituire / ad un percorso di directory, per esempio / casa / max.
    • Può essere utilizzata . invece di /per cercare il file solo nella directory corrente e nelle sue sottodirectory.
  3. 3 Usa un simbolo di generalizzazione.*per trovare file il cui nome corrisponde alla parte della richiesta. Usando il simbolo di generalizzazione * puoi trovare un file il cui nome completo è sconosciuto oppure puoi trovare tutti i file con un'estensione specifica.

    trova / home / max -iname " *. conf"

    • Questo comando troverà tutti i file con estensione .conf nella cartella utente Max (e nelle sue sottocartelle).
    • Usa questo comando per trovare tutti i file che corrispondono a parte della query. Ad esempio, se hai molti file relativi a WikiHow sul tuo computer, trova tutti i file digitando " * wiki *".
  4. 4 Semplifica la gestione dei risultati di ricerca. Se ci sono troppi risultati di ricerca, è difficile trovare il file che stai cercando. Usa il simbolo |per filtrare i risultati della ricerca con meno. In questo modo sarà più facile visualizzare e filtrare i risultati della ricerca.

    trova / home / max -iname " *. conf" | meno

  5. 5 Trova oggetti specifici. Utilizza i modificatori per mostrare solo elementi specifici nei risultati di ricerca. Puoi cercare file normali (F), directory (D), collegamenti simbolici (io), dispositivi I/O di carattere (insieme a) e dispositivi di blocco (B).

    trova / -type f -iname "nomefile"

  6. 6 Filtra i risultati della ricerca in base alla dimensione del file. Se hai molti file con nomi simili sul tuo computer, ma conosci la dimensione del file che stai cercando, filtra i risultati della ricerca in base alla dimensione del file.

    trova / -size + 50M -iname "nome file"

    • Questo comando troverà tutti i file più grandi di 50 MB. Usa un modificatore + o -per indicare un aumento o una diminuzione delle dimensioni. Se il modificatore + o - no, il comando troverà i file che hanno esattamente la stessa dimensione della dimensione specificata.
    • I risultati della ricerca possono essere filtrati per byte (C), kilobyte (K), megabyte (m), gigabyte (G) o blocchi di 512 byte (B). Notare che i modificatori mostrati fanno distinzione tra maiuscole e minuscole.
  7. 7 Utilizzare operatori logici (operatori booleani) per combinare i filtri di ricerca. Gli operatori possono essere utilizzati -e, -o, -nonper combinare diversi termini di ricerca in un'unica query.

    trova / travelphotos -type f -size + 200k -not -iname " * 2015 *"

    • Questo comando troverà i file nella cartella "Travelphotos" che sono più grandi di 200 KB e che non hanno il numero 2015 nei loro nomi.
  8. 8 Trova i file per proprietario o permessi. Se hai bisogno di trovare un file di proprietà di un utente specifico o un file con diritti di accesso specifici, puoi restringere la ricerca.

    find / -user max -iname "nome file" find / -group utenti -iname "nome file" find / -perm 777 -iname "nome file"

    • I comandi precedenti troveranno il file per un utente, gruppo o con diritti di accesso specifici. Puoi anche omettere il nome del file nella query per trovare tutti i file che corrispondono ai criteri specificati. Ad esempio, il comando trova / -perm 777 troverà tutti i file con permessi 777 (illimitati).
  9. 9 Combina i comandi per eseguire azioni specifiche al termine della ricerca del file. Il gruppo Trovare può essere combinato con altri comandi che elaboreranno i file trovati. Per fare questo, tra la squadra Trovare e con il secondo comando invio -exece alla fine della riga inserisci {} ;

    Trovare. -type f -perm 777 -exec chmod 755 {} ;

    • Questo comando troverà nella directory corrente (e nelle sue sottodirectory) tutti i file con i permessi 777, quindi utilizzando il comando chmod i diritti di accesso passeranno a 755.

Metodo 2 di 3: individuare l'utilità

  1. 1 Installa l'utilità.individuare... Questa utility è più veloce dell'utility Trovareperché in realtà non esegue la scansione del filesystem. Tuttavia, non tutte le distribuzioni Linux vengono fornite con l'utilità. individuarequindi inserisci i seguenti comandi per installarlo:
    • accedere sudo apt-get update e premi Entra.
    • Su Debian e Ubuntu, fai quanto segue: invio sudo apt-get install mlocate e premi Entra... Se individuare già installato, viene visualizzato un messaggio mlocate è già la versione più recente (ultima versione installata).
    • Su Arch Linux, usa il gestore di pacchetti pacman: pacman -Syu mlocate
    • Su Gentoo, usa emerge: emerge mlocate
  2. 2 Aggiorna il database delle utilità.individuare... Questa utility non sarà in grado di trovare nulla senza un database precedentemente creato e aggiornato (che memorizza una parvenza di un'istantanea dal file system). Il database viene aggiornato quotidianamente in modalità automatica, ma può essere effettuato manualmente. Aggiorna manualmente il database per iniziare subito a lavorare con individuare.
    • accedere sudo aggiornato e premi Entra.
  3. 3 Utilizzo.individuareper eseguire semplici ricerche. Utilità individuare funziona rapidamente, ma non è funzionale come l'utilità Trovare... Squadra individuare gestisce semplici query di ricerca in modo simile al comando Trovare.

    individuare -i " *.webp"

    • Questo comando troverà (in tutto il sistema) tutti i file con l'estensione .webp... Qui il simbolo della generalizzazione * funziona come la squadra Trovare.
    • Come la squadra Trovare, modificatore -io ignora il caso del termine di ricerca.
  4. .
  5. 4 Limita il numero di risultati di ricerca. Se ci sono troppi risultati di ricerca, accorciali con il modificatore -n e un numero che determina il numero di risultati di ricerca visualizzati.

    individuare -n 20 -i " *. jpg"

    • Questo comando visualizzerà i primi 20 risultati che corrispondono al termine di ricerca.
    • Puoi anche usare il simbolo |per filtrare i risultati della ricerca con meno. In questo modo sarà più facile visualizzare i risultati della ricerca.

Metodo 3 di 3: trova il testo nei file

  1. 1 Usa il comando.grepper cercare testo nei file. Eseguire questa operazione per trovare un file che contiene una frase o una riga specifica. Formato comando di base grep come segue:

    grep -r -i "query di ricerca" / percorso / a / directory /

    • Modificatore -R rende la ricerca ricorsiva, quindi qualsiasi file contenente una stringa del termine di ricerca verrà trovato nella directory corrente (e in tutte le sottodirectory).
    • Modificatore -io indica che la richiesta non fa distinzione tra maiuscole e minuscole. Per distinguere tra maiuscole e minuscole, non inserire il modificatore -io.
  2. 2 Nascondi il testo in eccesso. Quando si esegue il comando grep (come descritto sopra) sullo schermo verranno visualizzati il ​​nome del file e il testo con la frase o la stringa evidenziata specificata nella query di ricerca. È possibile nascondere tale testo per visualizzare solo il nome e il percorso del file. Per fare ciò, inserisci il seguente comando:

    grep -r -i "query di ricerca" / percorso / a / directory / | taglia -d: -f1

  3. 3 Nascondi i messaggi di errore. Squadra grep visualizza un messaggio di errore se tenta di accedere alle cartelle senza i permessi appropriati o finisce in cartelle vuote. Tali messaggi possono essere inviati a /dev/null in modo che non vengano visualizzati sullo schermo.

    grep -r -i "query di ricerca" / percorso / a / directory / 2> / dev / null