Como pesquisar por conteúdo no Ubuntu


8

Eu gostaria de pesquisar em todo o servidor por conteúdo. (arquivo de texto)

Quando tento grep -rl "texto aqui", ele congela.

Como você faria?

E quanto tempo geralmente leva?

Respostas:


17

Você precisa especificar um arquivo ao usar o grepcomando Com o comando que você está usando, você está pesquisando na entrada padrão ...

Tente grep -r "test" directory.


7
find / -name "*.txt" -exec grep "text here" {} \; -print 2>/dev/null

O que pode ser explicado em linguagem humana como:

  1. encontrar
  2. Começando de /
  3. em todos os arquivos denominados * .txt (as aspas devem ignorar a interpretação do shell)
  4. com os hits resultantes, execute o seguinte
  5. grep "teste aqui"
  6. no arquivo {}
  7. final do exec (\;) escapou do final da instrução
  8. imprima os arquivos que correspondem
  9. redirecione as mensagens de erro no coletor (já que você pode não ser root, caso contrário, basta sudo).

diz "find: argumento ausente para 'grep'"
webnat0

trabalha aqui. como você substituiu "test here"?
Alain Pannetier

11
@ Daeyun: Existe apenas uma barra invertida.
Pausado até novo aviso.

11
@Dennis. Depende da sua língua materna. No Japão e na Coréia, existem vários conjuntos de caracteres nos quais a barra invertida também é renderizada como o sinal Yen ou Wong (0x5c). Além disso, dê uma olhada em u + 20E5. No passado, havia várias explorações no IIS nas quais era possível explorar todo o disco (onde o IIS tinha sua raiz) de um PC apenas misturando barras reais e falsas (outro unicode equivalente convertido no plano ascii) e pelo menos um usando sobreposição solidus reversa.
Alain Pannetier

0

você esquece de especificar que tipo de arquivo deseja pesquisar,
faça o login como root

cd /
grep -rl "text here" *  > /tmp/match.txt

isso levará muito tempo e você poderá coletar os resultados posteriormente, verificando /tmp/match.txt


0

O comando a seguir pesquisa todos os arquivos que terminam com .txt no diretório de trabalho atual e em todos os subdiretórios:

find . -type f -name '*.txt' -exec grep -Hn "text here" {} \;

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.