Como procurar arquivos contendo palavras específicas?

37

Como procurar arquivos contendo palavras específicas?

UAdapter
fonte
5
Você realmente quer dizer NOMES do arquivo de pesquisa que contém uma palavra específica? ou seja: todos os arquivos com o termo FUN em seus nomes, FUN_time.txt FUN_stuff.txt Ou pesquise DENTRO de um arquivo por palavras específicas?
22411 dr_willis #

Respostas:

51

Com a linha de comando, você tem várias opções. Os 3 que eu mais uso são ...

  1. locate {part_of_word}

    Isso pressupõe que seu banco de dados de localização esteja atualizado, mas você pode atualizar isso manualmente com: sudo updatedb

  2. grepcomo explicado por dr_willis. Uma observação: -Rdepois greptambém procurou nos diretórios. Exemplo:

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

Onde .é o diretório em que você está no momento e *é um curinga.

Ah, e você também pode combiná-los. Exemplo: locate {something}|grep {some_part_of_something}|more

Se bem me lembro: locateé o mais rápido (supondo que seu banco de dados esteja atualizado) e findo mais lento. E grepé o mais complexo, mas também o mais versátil, pois você pode usar expressões regulares.

Rinzwind
fonte
25

grep -R "o que" "onde"

exemplo:

grep -R hello /home

DemonWareXT
fonte
4

O comando grep é comumente usado para isso.

nome do arquivo grep PATTERN

e o grep pode fazer uma pesquisa muito complexa.

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
dr_willis
fonte
3
ou você pode fazer "rgrep word". para pesquisar recursivamente todos os arquivos e subdiretório para "palavra"
Jeremy Bicha
4

Você pode usar greppara listar os arquivos que contêm wordo dado directory:

grep -Ril word directory

Aqui:
* -RPesquise recursivamente arquivos em subdiretórios.
* -iignorar caixa de texto
* -lmostrar nomes de arquivos em vez de partes do conteúdo do arquivo. (nota: -Lmostra nomes de arquivos que não contêm a palavra).

use man greppara obter todas as opções

Chandan
fonte
3
Só para você saber: -irealiza uma pesquisa que não diferencia maiúsculas de minúsculas.
David Foerster