Ações condicionais no SED

Publicado por Fábio Berbert de Paula em 09/07/2020

[ Hits: 3.719 ]

Blog: https://fabio.automatizando.dev

 


Ações condicionais no SED



Ações condicionais no SED
Nesta dica veremos como fazer com que o sed processe linhas de acordo com condições.

Dado o arquivo duplas.txt com o seguinte conteúdo:

Marcos & Belutti
Maria Cecília & Rodolfo
Mariano & Caçula
Marlon & Maicon
Matheus & Kauan
Matogrosso & Mathias
Maurício & Mauri
Maurício & Eduardo
Mayck & Lyan

Quero substituir o caractere "&" pela vogal "e":

sed 's/\&/e/' duplas.txt

Ok, o comando acima fez a substituição em TODAS as linhas do arquivo. Agora quero restringir a substituição somente para linhas que possuam "Maurício":

sed '/Maurício/ s/\&/e/' duplas.txt

O primeiro "/[expressão]/" é a condição e o segundo é o comando sed. O comando acima irá processar somente as linhas que possuam a palavra Maurício.

Para negar a condição, ou seja, processar todas as linhas exceto as que possuam Maurício, use "!". Exemplo:

sed '/Maurício/! s/\&/e/' duplas.txt

Até a próxima.

Outras dicas deste autor

Viva o Linux no Twitter!

Habilitar highlight na busca do Vim

E-book GRATUITO de Shell Script do Júlio Neves

PHP - "Notice: Use of undefined constant..." [Resolvido]

Expressão Regular para CPF

Leitura recomendada

Testando se uma variável é número em shell script

Informações completas sobre os arquivos numa pasta

Executando comandos em looping no shell

Eliminando linhas de comentário ou linhas em branco no Linux

Screen (janelas) no modo shell?

  

Comentários
[1] Comentário enviado por maurixnovatrento em 10/07/2020 - 13:36h


muito bom.

___________________________________
Conhecimento não se Leva para o Túmulo.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts