Ações condicionais no SED

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

[ Hits: 3.530 ]

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

Manipulando data e hora em Python com timedelta

Como desabilitar o protocolo SSL3 no Nginx

O comando date

Contar e ordenar a quantidade de ocorrências de cada linha em um arquivo

Obtendo a soma do tamanho os arquivos listados com "du"

Leitura recomendada

SED - texto para maiúsculas, minúsculas, pascal case e camel case

Exibindo o nome completo dos pacotes instalados no Debian e derivados

Leitor de arquivos ePub

Múltiplas expressões no SED

Limitando o alcance do SED por números de linha

  

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