Como filtrar exatamente uma palavra no terminal

Publicado por Daniel Zaia Manzano em 05/11/2015

[ Hits: 14.513 ]

 


Como filtrar exatamente uma palavra no terminal



Em nosso dia a dia no terminal, acabamos precisando filtrar conteúdos de texto ou até fazer substituições de texto de vez em quando.

Irei demonstrar uma situação corriqueira, em que tenho um arquivo chamado 'veiculos.txt', e pretendo filtrar a string 'car'.

Porém, ao utilizar o comando grep normalmente, ele acaba filtrando também a string 'carro', uma vez que a string 'carro' contém a string 'car'.

Para filtrar exatamente a string 'car', é necessário isolar a string com '<>', porém estes caracteres precisam ser escapados previamente.

Ex.:
Linux: Como filtrar exatamente uma palavra no terminal
Em outra situação, pretendo fazer uma substituição de texto no conteúdo do arquivo 'veiculos.txt', alterando as ocorrências da string 'car' por 'navio'.

Novamente, a substituição acaba afetando também as ocorrências com a string 'carro', uma vez que a string 'carro' contém a string 'car', gerando o resultado 'navioro'.

Para efetuar a substituição exata da string 'car', basta isolar a string com '<>', escapando estes caracteres previamente:
Linux: Como filtrar exatamente uma palavra no terminal
Outras dicas deste autor

type - Determinar o tipo de um comando

Montando partições NTFS com permissão de leitura e escrita

Debian - Descobrindo a que tipo de repositório um pacote pertence

Aliases no bash e como "escapar" um comando com alias

iconv - Convertendo a codificação de arquivos no GNU/Linux

Leitura recomendada

Awk - Uma poderosa ferramenta de análise

auto-apt - Erro: "dpkg warning obsolete option --print-installation-architecture" [Resolvido]

Exemplos para o comando modprobe

Habilitando busca incremental de comandos no terminal GNU/Linux

Comando CUT usando delimitador TAB

  

Comentários
[1] Comentário enviado por Thomacelli em 05/11/2015 - 23:05h

Prabéns Daniel,
mas prefiro entrar no Vim e usar o %s/car/navio/g

Att. Antonio Thomacelli Gomes
http://www.tonnytg.com.br

[2] Comentário enviado por hellnux em 09/11/2015 - 10:18h

Dessa eu não sabia. Boa!

Nestes casos costumo utilizar o grep -w

[3] Comentário enviado por dzm_linux em 09/11/2015 - 13:56h


E eu já não sabia do 'grep -w'.
Acho que preciso tomar mais algumas doses de RTFM kkk

Vlw



Contribuir com comentário