Ações condicionais no SED

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

[ Hits: 3.931 ]

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

Como atualizar seu Ubuntu para 14.10 ou superior

JavaScript - verificar se todos os itens de um array são pares ou ímpares

Solução para tamanho da fonte das legendas no Totem

Meu servidor Conectiva Linux se conecta, mas não encontra sites na Internet

Google Authenticator no terminal Linux

Leitura recomendada

sed - Eliminando linhas em branco

Como renomear arquivos de letras maiúsculas para minúsculas

Redirecionamento no Shell

Introdução ao awk

Listar comandos mais utilizados (via histórico de 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