Ações condicionais no SED

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

[ Hits: 3.505 ]

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

Restaurando abas no Google Chrome

Redirecionando saída de comando para arquivo com sudo

Unetbootin - Failed to load COM32 file menu.c32 [RESOLVIDO]

Input do tipo senha em Python

O que é DNS

Leitura recomendada

Como fazer "quit" no SED

Executando comandos em looping no shell

Introdução ao awk

Busca por string dentro dos arquivos

Exibindo o nome completo dos pacotes instalados no Debian e derivados

  

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