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

Publicado por Xerxes em 11/06/2015

[ Hits: 25.114 ]

 


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

Como restaurar o Portage no Funtoo

Quadrados ou retângulos no lugar de texto [Resolvido]

Instalação do Fedy no Fedora (alternativa ao easyLife)

Linux Mint 17 (pós-instalação)

Samba para Linux acessar Windows e vice-versa

Leitura recomendada

Cairo-dock sem composite

[ LinuxTips ] - Descomplicando o systemd - Parte1

Configurando placa Realtek RTL8191SE-VA2 no Kismet (Ubuntu e similares)

Limpando sua memória cache de forma simples (parte 2)

Sistema de arquivos, disco rígido e memória do seu Linux

  

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

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts