Pular para o conteúdo

Busca por string dentro dos arquivos

Dica publicada em Shell Script / Expressões Regulares
Gleisson Marin Bissa gleissonmb
Hits: 131.528 Categoria: Shell Script Subcategoria: Expressões Regulares
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Busca por string dentro dos arquivos

Este comando busca dentro dos arquivos da pasta corrente a string TESTE e lista estes arquivos.

# find ./* -type f -exec grep -l TESTE {} \;

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Linux vs. Windows no Konqueror

Comando para listar usuários Samba

Como configurar VNC numa estação Linux

sed - Eliminando linhas em branco

Baixando todos os arquivos de uma URL com o wget

Criando usuários a partir de uma lista

Leitor de arquivos ePub

Eliminando linhas de comentário ou linhas em branco no Linux

#1 Comentário enviado por edsonmsj em 20/03/2008 - 19:53h
Legal, valeu só não entendi o {}\; no final da linha sei pouco sobre shell
#2 Comentário enviado por removido em 22/03/2008 - 11:25h
Boa dica, mas não é necessário o uso do find para buscar strings em arquivos o próprio grep se encarrega disso... basta usar a seguinte sintaxe:

$ grep -rin "STRING" ./*

Com esse comando o grep varre recursivamente o diretório especificado por arquivos que contenham a STRING informada.

Abracos.
#3 Comentário enviado por neon_ em 22/05/2008 - 22:31h
boa dica. mas costumo usar o grep também.
#4 Comentário enviado por tiguassa em 04/11/2013 - 22:27h
Olá. Obrigado pela contribuição!
Partindo desta consulta, como posso criar uma condição de acordo com o resultado desta pesquisa?
$ grep -rin "STRING" ./*

Por exemplo:
Se a "string" existir no arquivo, faça X; senão, faça Y.

Ou seja, não quero simplesmente que a consulta me retorne um dado, mas que dispare uma ação caso a "string" exista no arquivo.

PS.: Iniciante empolgado!

Abrax!
#5 Comentário enviado por DedersSP em 20/03/2015 - 13:23h
Já tentei de várias forma mas sem sucesso... estou precisando de um comando deste mas que consiga entrar em arquivos xlsx, docx e pptx. O grep só trás os binarios xls e doc!!
Alguém pode me ajudar?
#7 Comentário enviado por Ar7Tecnology em 08/08/2017 - 14:10h
Boa tarde !

Ótima dica.

No meu caso, resolveu da seguinte forma:

grep -rin teste

Abraços.

Contribuir com comentário

Entre na sua conta para comentar.