CMD Master
Voltar ao blog
Arnošt Havelka

Procurar texto em ficheiros com grep

Encontre linhas correspondentes num ficheiro e ignore maiúsculas com grep -i.

Iniciar lição interativa
Procurar texto em ficheiros com grep

grep imprime só as linhas que contêm um padrão. É assim que caça um TODO no código, ou extrai avisos de um registo, sem abrir o ficheiro inteiro.

Encontrar linhas que correspondem a uma palavra

Coloque o padrão primeiro e depois o nome do ficheiro. As aspas mantêm espaços e caracteres especiais em segurança.

Experimente o comando

Extraia as linhas correspondentes de um ficheiro!

Montar o comando
grep
Terminal
C:\Users\User>grep 'TODO' code.js

Caçar um marcador no código:

Command Prompt
// TODO: fix bug function test() {}
C:\Users\User>cat code.js

As linhas que não correspondem ficam ocultas. Se nada corresponder, grep não imprime nada e o prompt volta.

Ignorar maiúsculas e minúsculas: grep -i

Os registos misturam WARN e warn. -i trata-os como a mesma palavra.

printf '%s\n' 'WARN: Slow response' 'warn: timeout' > log.txt
grep -i 'warn' log.txt

Isso imprime tanto WARN: Slow response como warn: timeout.

Command Prompt
warn: timeout
C:\Users\User>grep 'warn' log.txt

Comece com um padrão entre aspas e um nome de ficheiro. Acrescente -i assim que as maiúsculas e minúsculas começarem a atrapalhar.


Teste de conhecimentos

1 / 3

O que imprime grep?

Referências

Estes links de documentação trazem detalhes confiáveis sobre os comandos usados neste artigo.

A seguir

Encontrar ficheiros pelo nome no Bash

Pesquise uma árvore com find . -name e liste só pastas com -type d.