Como pesquisar strings dentro de arquivos como no Windows sem o macaco de busca?

11

Estou usando o Ubuntu no VMWare, mas não consigo me conectar à Internet devido a restrições de segurança.

Eu queria saber se havia uma maneira de procurar por strings através do terminal e encontrar em qual linha a string está localizada dentro do arquivo.

    
por user138056 18.08.2014 / 20:51

3 respostas

20

Existem quase muitas opções para listar

grep -r 'pattern_to_match' directory_to_search

Produzirá o nome do arquivo e a linha completa correspondente ao padrão.

    
por Panther 18.08.2014 / 20:58
10

O melhor que eu uso é o comando grep com opções -ri (pesquisa recursiva e insensível a maiúsculas):

$ grep -r <text_pattern_to_search> directory_or_path_to_search

opções que podem ser úteis para você:

    -i - case insensitive
    -r, --recursive  like --directories=recurse
    -R, --dereference-recursive  likewise, but follow all symlinks
      --include=FILE_PATTERN  search only files that match FILE_PATTERN
      --exclude=FILE_PATTERN  skip files and directories matching FILE_PATTERN
      --exclude-from=FILE   skip files matching any file pattern from FILE
      --exclude-dir=PATTERN  directories that match PATTERN will be skipped.
    
por xxbinxx 22.08.2014 / 07:59
5


Se você quiser encontrar apenas o número da linha onde a picada está localizada dentro do arquivo, use isto:

grep -n '/string_To_Find/=' directory/file_Name

Se você quiser encontrar o número da linha e também o nome completo da linha onde a string está localizada na linha, use:

grep -n 'string_To_Find' directory/file_Name

E se você quiser apenas encontrar o nome completo da linha onde a string está, use isto:

grep -r 'string_To_Find' directory/file_Name
    
por αғsнιη 22.08.2014 / 08:28