Procurando Texto em Arquivo no GNU/Linux
Introdução
O que é GREP?
O grep é um programa que realiza pesquisas em arquivos na intenção de achar padrões. Esses padrões podem ser definidos com as opções inseridas no comando de execução, a exemplo desse post onde procuraremos uma palavra ou frase dentro de um arquivo.
Explicando cada opção inserida no comando:
-R (–dereference-recursive): Faz a pesquisa em modo recursivo no diretório, ou seja, todos os subdiretórios, seus arquivos e links simbólicos serão pesquisados.
-i (–ignore-case): Não fará diferença (case sensitive) entre letras maiúsculas e minúsculas.
-v (–invert-match): É uma espécie de verbose, onde inverte o sentido do comando e exibe todos os arquivos que não possuem o texto ou frase que você procura.
> nome.txt, resultado.log etc: Cria um arquivo com o resultado da pesquisa, mostrando o diretório e o arquivo onde está o texto ou frase.
Execução do comando
Sintaxe do comando:
grep [OPÇÃO] [ARQUIVO]
Observação 1: A execução do comando pode demorar minutos ou até horas, então execute com moderação. A saída do resultado para um arquivo também pode criar outro arquivo (log) muito grande caso você use o -v (–invert-match) combinado com > nome.log.
Observação 2: O arquivo de saída será criado no diretório em que você está no Terminal, se não souber o diretório digite pwd para visualizar.
Opções de uso:
1 – Você está em um diretório e não sabe onde está o arquivo com a palavra ou frase, então pesquise em toda a unidade, nesse caso vou pesquisar em minha unidade de backup.
$ grep -Ri "Procurando Texto em Arquivo" /media/erick/BACKUP/
2 – Se você sabe onde está o arquivo, execute o comando direto no diretório:
$ grep -Ri "Procurando Texto em Arquivo" /media/erick/BACKUP/Backup\ -\ Erick/ > grep.log
Resultado do comando acima que criou o arquivo grep.log mostrando o arquivo onde está a frase:
/media/erick/BACKUP/Backup – Erick/textos/tutorial.txt:Procurando Texto em Arquivo
Documentação Oficial do GREP: https://www.gnu.org/software/grep/manual/grep.html
Para críticas, dúvidas e sugestões, envie um e-mail para erick{“arrob4”}erickandrade.com.br.