Come cercare file contenenti parole specifiche?


37

Come cercare file contenenti parole specifiche?


5
Intendi davvero il file di ricerca NAMES che contiene una parola specifica? vale a dire: tutti i file che hanno il termine FUN nei loro nomi, FUN_time.txt FUN_stuff.txt O cerca all'interno di un file per parole specifiche?
dr_willis,

Risposte:


51

Con la riga di comando hai diverse opzioni. I 3 che utilizzo di più sono ...

  1. locate {part_of_word}

    Ciò presuppone che il database di individuazione sia aggiornato ma è possibile aggiornarlo manualmente con: sudo updatedb

  2. grepcome spiegato da dr_willis. Un'osservazione: -Rdopo grepanche cercato all'interno delle directory. Esempio:

    cd\
    grep -R {something_to_look_for} {where_to_look_in}
    
  3. find . -name '*{part_of_word}*' -print

Dov'è .la directory in cui ti trovi al momento ed *è un jolly.

Oh e puoi anche combinare questi. Esempio: locate {something}|grep {some_part_of_something}|more

Se ricordo bene: locateè il più veloce (supponendo che il tuo database sia aggiornato) ed findè il più lento. Ed grepè il più complesso ma anche il più versatile di questi poiché è possibile utilizzare regex.



4

Il comando grep è comunemente usato per questo.

grep PATTERN nomefile

e grep può fare ricerche molto complesse.

willis@Cow:~$ grep --help
Usage: grep [OPTION]... PATTERN [FILE]...
Search for PATTERN in each FILE or standard input.
PATTERN is, by default, a basic regular expression (BRE).
Example: grep -i 'hello world' menu.h main.c

3
oppure puoi fare "rgrep word". per cercare ricorsivamente "file" in ogni file e sottocartella
Jeremy Bicha,

4

È possibile utilizzare grepper elencare i file contenenti wordnel dato directory:

grep -Ril word directory

Qui:
* -Rcerca ricorsivamente i file nelle sottodirectory.
* -iignora maiuscole / minuscole
* -lmostra i nomi dei file anziché le porzioni dei contenuti dei file. (nota: -Lmostra i nomi dei file che non contengono la parola).

utilizzare man grepper ottenere tutte le opzioni


3
Solo per questo sai: -iesegue una ricerca senza distinzione tra maiuscole e minuscole.
David Foerster,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.