O que é o comando grep?
O comando grep significa “global regular expression print”, ele processa textos, linha por linha, e imprime qualquer linha que coincida com um valor que você estiver procurando. Na prática ele funciona como se fosse um mecanismo de busca por palavras/textos dentro de arquivos.
Exemplos de utilização
Vamos supor que você queira encontrar o texto “www” em um único arquivo neste exemplo chamado de nome-do-arquivo.php:
grep "www" nome-do-arquivo.php
A saída deste comando será(ão) a(s) linha(s) do arquivo que contém a informação que estamos procurando.
É importante salientar que o padrão interpretado pelo grep é uma expressão regular. No exemplo acima todos os caracteres utilizados são interpretados literalmente, portanto apenas as palavras/textos que correspondem EXATAMENTE ao que você está procurando serão exibidos.
Destacando as palavras que você procura com cor:
grep --color "www" nome-do-arquivo.php
Com este comando o resultado de nossa busca aparecerá destacado em vermelho no terminal.
Vendo os números das linhas:
Se você utilizar a opção -n o grep vai adicionar o número da linha onde o seu resultado foi encontrado.
grep -n "www" nome-do-arquivo.php
Incluindo palavras case sensitive nas buscas com o grep:
Para incluir palavras com letras maiúsculas e minúsculas na sua busca (ou seja, tornar a sua busca case sensitive) utilize a opção -i.
grep -i "www" nome-do-arquivo.php
Buscando em vários arquivos diferentes:
Você pode utilizar um asterisco no lugar do nome do arquivo e .php para a extensão. Neste caso o grep fará a busca em todos os arquivos com extensão .php:
grep "www" *.php
Você também pode utilizar o asterisco sem determinar a extensão do arquivo para fazer a busca em quaisquer arquivos que existam dentro de um diretório.
Buscando recursivamente:
Você pode estender a sua busca para sub-diretorios e todos os arquivos neles contidos usando a opção -r. Esta opção diz para o grep fazer a busca recursivamente:
grep -r "www" nome-do-arquivo.php
Comentários