Pular para o conteúdo

Pesquisando arquivos pelo seu conteúdo em modo texto

Dica publicada em Linux / Comandos
Anderson de Assis de Souza anderson_souza
Hits: 73.369 Categoria: Linux Subcategoria: Comandos
  • 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.

Pesquisando arquivos pelo seu conteúdo em modo texto

Esta é uma dica bem simples, mas como eu tive um certo trabalho para descobrir, resolvi compartilhar com a comunidade.

Às vezes é necessário pesquisar um arquivo pelo conteúdo e talvez o computador que você esteja usando só tenha o Linux em modo texto, normalmente servidores.

Nesse caso é necessário combinar alguns comandos do Linux, utilizando seu incrível potencial. O resultado é este:

# find / | xargs grep -s -a -i palavra_chave | cut -d : -f 1 | uniq

Desta forma serão mostrados todos os arquivos do computador que contenham esta palavra_chave. Note que você pode mudar o diretório de pesquisa no início do comando "find /". Você pode modificar por exemplo para "find /home/seu_usuário".

No entanto existe um problema neste comando, se você tiver algum arquivo que contenha no meio do seu nome o caracter ":" , só irá mostrar a primeira parte do arquivo.

Neste caso, que pode dar problemas, resuma o comando um pouco, mas a tela será preenchida com informações em excesso. Veja o comando abaixo:

# find / | xargs grep -s -a -i palavra_chave | uniq

Se você quiser saber quantas vezes a palavra chave aparece, retire o comando "|uniq", será mostrado cada arquivo o mesmo número de vezes que encontrar a palavra_chave no arquivo.

Esta dica é simples, mas também é bastante útil.

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.

Instalando o Macromedia Flash no Linux

Problemas ao compilar o MPlayer no Slackware Linux 12.1

Instalando o pacote ZEOS Access no Lazarus 0.9.24

Problema: programa não roda fora do Kylix

Corrigindo o erro: C compiler cannot create executables

Monitor de sistema no MATE Desktop

Comandos de Slackware para iniciantes

Usando cat para copiar arquivos remotos

Efetuando varreduras de rede com o nmap

Travando/bloqueando arquivos e diretórios no GNU/Linux

#1 Comentário enviado por pedemesa em 04/09/2006 - 16:03h
Muito boa dica!
#2 Comentário enviado por buenopeixe em 17/08/2009 - 14:06h
E aí fera... como disse... dica simples porém bastante útil!

Excelente dica!

Grande abraço!
#3 Comentário enviado por joaomichelazzo em 21/08/2009 - 11:10h
O que pode ser feito para otimizar o resultado da busca é criar um Shell para executar a busca.

Criei um arquivo "busca" por exemplo

no final da string acrescente "> x" onde "x" é o nome do arquivo com o resultado da busca

ind / | xargs grep -s -a -i palavra_chave | cut -d : -f 1 | uniq > x

no prompt execute o shell

# sh busca
ou
# ./busca

O resultado da busca será salvo no arquivo "x" que você adicionou ao final da string
#4 Comentário enviado por yourganow_007 em 05/11/2009 - 13:13h
ok, boa dica! mais como fazer isso em modo gráfico?
#5 Comentário enviado por ers.darksider em 14/05/2010 - 21:12h
excelente dica...

Gostaria de saber se funciona (ou como funcionaria) para buscar uma expressão dentro de um arquivo .doc.

É possível?

Valeu!
#6 Comentário enviado por Denilson-Pereira em 18/02/2017 - 19:00h
Ficou muito legal, eu só adicionaria o 2>/dev/null para limpar as mensagens de erro da tela.

Ficaria assim no comando 1:

# find / 2>/dev/null | xargs grep -s -a -i palavra_chave | cut -d : -f 1 | uniq

E assim no comando 2:

# find / 2>/dev/null | xargs grep -s -a -i palavra_chave | uniq

Contribuir com comentário

Entre na sua conta para comentar.