Como filtrar exatamente uma palavra no terminal

Publicado por Daniel Zaia Manzano em 05/11/2015

[ Hits: 14.369 ]

 


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

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

Habilitando demais terminais virtuais

lshw - Obtendo informações de hardware

Debian - Versão da distribuição

Como selecionar absolutamente todo o conteúdo de um diretório no modo texto

Leitura recomendada

Instalando pacotes RPM no Slackware 13.0

Criando uma lixeira no shell

Vire "ninja" no Linux com curso grátis online

Contornando bug do Nautilus no Fedora

Renomeando múltiplos arquivos com mmv

  

Comentários
[1] Comentário enviado por tonnytg 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




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts