Como usar o comando grep no Linux ou Apple macOS / OS X? Como posso usar o comando grep em sistemas operacionais Unix? Você pode me dar um exemplo simples do comando grep?

O que é o comando grep

Grep é um comando essencial do Linux e Unix. É usado para pesquisar texto e strings em um determinado arquivo.

Em outras palavras, o comando grep pesquisa o arquivo fornecido em busca de linhas que contenham uma correspondência com as strings ou palavras fornecidas. É um dos comandos mais úteis em sistemas Linux e Unix para desenvolvedores e administradores de sistemas.

Vamos ver como usar o grep em um sistema Linux ou Unix. Os exemplos podem ser usados em distribuições Linux Ubuntu, Mint, Debian, Arch Linux, CentOs e outras.

Você sabia?

O nome, “grep”, deriva do comando usado para realizar uma operação semelhante, usando o editor de texto Unix / Linux ed:

g / re / p


Os utilitários grep são uma família que inclui grep, egrep e fgrep para tarefas de pesquisa.

Para a maioria dos usos, você precisa usar fgrep, pois é o mais rápido e só olha strings e palavras. No entanto, digitar grep é fácil. Portanto, é uma escolha pessoal.

Exemplos do comando grep em Linux, Unix e MacOS

Abaixo estão alguns comandos padrões do grep, explicados com exemplos para você começar a usar grep no Linux, macOS e Unix:

  • Pesquisar no Linux qualquer linha de um arquivo que contenha a “palavra”:
grep 'palavra' nome-do-arquivo

Por exemplo, procurar a palavra error no arquivo de log de um programa:

grep "error" storage/logs/laravel-2021-09-18.log

## resultado 
[2021-09-18 01:01:16] production.ERROR: GuzzleHttp\Exception\ClientException: Client error: `GET https://mazer.dev/api/ws` resulted in a `400 Bad Request` response:
  • Fazer uma pesquisa sem distinção entre maiúsculas e minúsculas – case insensitive, adicione a opção -i ao comando.

Por exemplo pesquisar pela palavra “bar” no Linux e Unix:

grep -i 'bar' nome-do-arquivo

Os retornos serão todas as linhas com: bar, Bar, BAr, BAR, bAr, etc.

  • Procurar por todos os arquivos no diretório atual e em todos os seus subdiretórios no Linux pela palavra “httpd”:
grep -R 'httpd' .

O ponto ( . ) indica o arquivo atual em Linux. A opção -R informa ao comando grep que deve fazer a pesquisa recursivamente nos subdiretórios.

  • Pesquisar e mostrar o número total de vezes (contagem) que a string sagrada aparece em um arquivo denominado frontpage.md. Para isso use a opção -c:
grep -c 'sagrada' frontpage.md

Estes foram exemplos rápidos do comando grep.

Syntaxe dos comandos grep

As sintaxes básicas para cada comando da raiz grep são:

grep 'text-to-search' filename
fgrep 'text-to-search' filename
grep 'text-to-search' file1 file2 file3
grep 'string1 string2'  filename
cat otherfile | grep 'text-to-search' 
command | grep 'text-to-search' 
command option1 | grep 'data'
grep --color 'data' fileName
grep [-options] pattern filename
fgrep [-options] words file

Como você pode perceber, ao utilizar o comando cat no arquivo desejado e direcionar sua saída com pipe para o grep, não é necessário informar o nome do arquivo no grep onde deseja pesquisar pelo texto.

O mesmo comportamento funcionará para outros comandos que direcionem sua saída para o comando grep.


Artigos de referência:

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *