Pular para o conteúdo

Localizar arquivo contendo texto especificado no Linux

Dica publicada em Linux / Miscelânea
Andrey Smith asmith
Hits: 46.979 Categoria: Linux Subcategoria: Miscelânea
  • Indicar
  • Impressora
  • Denunciar

Localizar arquivo contendo texto especificado no Linux

Certa vez, após instalar o GLPI (sistema de helpdesk), houve a necessidade de customizá-lo para ficar de acordo com as necessidades da empresa. O grande problema era saber em qual arquivo encontrar o conteúdo que deveria ser alterado.

Segue abaixo um exemplo de como efetuar a busca:

grep -R manaus /home/smith/ 2>/dev/null | cut -d: -f2 | uniq

Vamos dissecar o comando:
  • grep -R manaus /home/smith/ - procura recursivamente pela palavra "manaus" em todos arquivos a partir do diretório /home/smith;
  • 2>/dev/null - direciona as linhas de erro para /dev/null;
  • | (pipe) - redireciona a saída do comando anterior (grep -R manaus /home/smith/ 2>/dev/null), para a entrada do próximo comando;
  • cut -d: -f2 - o grep gera um arquivo no seguinte formato:

    /path/arquivo:conteúdo da linha

    Como queremos saber apenas qual arquivo contém a palavra "manaus", utilizaremos o comando cut para tratar a saída. O cut lê a saída do comando anterior e seleciona apenas o segundo campo (-f2), separado pelo delimitar (-d) "dois pontos" (":"), ignorando tudo que estiver depois do delimitador.
  • uniq - caso haja mais de uma ocorrência da palavra "manaus" em um mesmo arquivo, será exibida uma linha para cada ocorrência. O uniq remove as linhas duplicadas.

:wq!
Andrey Smith

CentOS 5.4 - Adicionando o repositório RPMforge

Instalando Encore ENL832-TX-ICNT no Debian

CentOS 5.4 - Criando um repositório local em 10 passos

Configurando hosts favoritos no SSH

GitHubDesktop no Fedora 33

Controlador de domínios: Acelere tráfico de dados da rede com servidor Linux com Samba em PDC

Top personalizado (colorido)

LILO: undefined video mode number

Extensões para o Gnome Shell

#1 Comentário enviado por ulisses_c em 04/05/2011 - 12:54h
Como faria para exibir a palavra dentro do arquivo como um faz Ctrol + F em editor de texto por exemplo ? seria com esse comando ou teria outro metodo mais facil.

Contribuir com comentário

Entre na sua conta para comentar.