Como filtrar exatamente uma palavra no terminal

Publicado por Daniel Zaia Manzano em 05/11/2015

[ Hits: 14.037 ]

 


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

Alterar resolução de tela do terminal (modo texto)

MEncoder - Conversão de vídeos pela linha de comando

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

Montando imagem ISO

Leitura recomendada

Exemplos para o comando modprobe

Usar o WoeUSB-ng no Debian para criar um pendrive bootável

Colocando seu lilo boot no disquete

Substituindo ocorrências de palavras dentro de um arquivo

Criando uma lixeira no shell

  

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