Buscando palavras (strings) em arquivos dentro de diretório recursivamente

Publicado por Xerxes Lins em 11/06/2015

[ Hits: 16.196 ]

Blog: https://voidlinux.org/

 


Buscando palavras (strings) em arquivos dentro de diretório recursivamente



Para buscar por uma palavra, ou mais de uma, dentro de vários arquivos em um diretório, podemos usar o comando Global Regular Expression Print, ou apenas grep.

O uso básico do comando grep é o seguinte:

grep palavra arquivo

Significa: busque a palavra dentro do arquivo.

Para procurar em vários arquivos:

grep palavra arquivo1 arquivo2 arquivo3

Também funciona para filtrar a saída de conteúdos. Exemplo:

cat arquivo | grep palavra

O comando cat (de catenate, ou concatenação) exibe o conteúdo do arquivo, mas o grep irá filtrar o conteúdo e mostrará apenas a linha que contiver a palavra.

O parâmetro "-i" indica que a busca do grep irá ignorar o fato da palavra ter letras maiúsculas ou minúsculas.

O parâmetro "-R" indica que a busca será recursiva em todos os diretórios.

O parâmetro "-l" lista os nomes dos arquivos que casam com o padrão.

Sendo assim, para encontrar os arquivos que contém determinadas palavras, basta usar:

grep -iRl "palavra1 palavra2 palavra3" /diretório

Para mais informações:

grep --help
$ man grep


Outras dicas deste autor

Terminais estilo Quake para Linux

Use o Gnome sem mouse

rename - Comando para renomear todos os arquivos para letra minúscula

Personalizando a tela de abertura do XFCE

Zenwalk 5.2 finalmente lançado!

Leitura recomendada

Mais opções do comando cat

Compactando e dividindo um arquivo no disquete

Como fazer logout forçado pela linha de comando no GNOME

Como resolver bug de áudio no Ubuntu 16.04 LTS (pulseaudio + HDMI)

Como listar arquivos ordenados por tamanho

  

Comentários
[1] Comentário enviado por lcavalheiro em 11/06/2015 - 22:12h

Boa dica, Xerxes!

Mas o que houve com o bom e velho
$ find diretorio -print0 | xargs -0 grep string

Zoeira, fazer isso com o grep é genial também. Mais uma vez, parabéns!

--
Luís Fernando Carvalho Cavalheiro
Public GPG signature: 0x246A590B
Só Slackware é GNU/Linux e Patrick Volkerding é o seu Profeta

[2] Comentário enviado por xerxeslins em 11/06/2015 - 22:20h


[1] Comentário enviado por lcavalheiro em 11/06/2015 - 22:12h

Boa dica, Xerxes!

Mas o que houve com o bom e velho
$ find diretorio -print0 | xargs -0 grep string

Zoeira, fazer isso com o grep é genial também. Mais uma vez, parabéns!

--
Luís Fernando Carvalho Cavalheiro
Public GPG signature: 0x246A590B
Só Slackware é GNU/Linux e Patrick Volkerding é o seu Profeta


kkkkkkk

essa eu nao sabia!


[3] Comentário enviado por thyagobrasileiro em 16/06/2015 - 10:42h


[1] Comentário enviado por lcavalheiro em 11/06/2015 - 22:12h

Boa dica, Xerxes!

Mas o que houve com o bom e velho
$ find diretorio -print0 | xargs -0 grep string

Zoeira, fazer isso com o grep é genial também. Mais uma vez, parabéns!

--
Luís Fernando Carvalho Cavalheiro
Public GPG signature: 0x246A590B
Só Slackware é GNU/Linux e Patrick Volkerding é o seu Profeta


kkkkkk, ei menino, explica ai o que esse comando faz



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts