Como fazer "quit" no SED

Publicado por Fábio Berbert de Paula em 08/06/2020

[ Hits: 419 ]

Blog: https://youtube.com/c/cotidianohackeado

 


Como fazer "quit" no SED



Mais uma dica rápida e excêntrica sobre o sed. Nesta demonstrarei como interromper o sed quando ocorrer algum evento.

Para ficar mais fácil de entender, vou partir para um exemplo prático. Dado o arquivo "texto.txt" abaixo:

1 Banana
2 Banana
3 Banana
4 Banana
5 Banana
6 Banana
7 Banana
8 Banana
9 Banana
10 Sair
11 Banana
12 Banana
13 Banana
14 Banana
15 Banana
16 Banana
17 Banana
18 Banana
19 Banana
20 Banana

Quero substituir "Banana" por "Limão" enquanto não aparecer a palavra "Sair". Quando encontrá-la, parar de processar.

sed 's/Banana/Limão/g ; /Sair/q' texto.txt
1 Limão
2 Limão
3 Limão
4 Limão
5 Limão
6 Limão
7 Limão
8 Limão
9 Limão
10 Sair


O "pulo do gato" no caso está em '/Sair/q', que significa que quando o sed encontrar o padrão /Sair/, irá fazer um quit (q).

Outras dicas deste autor

Como burlar anúncios sem usar nenhuma extensão

Gizmo no Ubuntu Dapper: The dmix plugin supports only playback stream

Como seu Samsung Galaxy S3 pode se transformar num PC

Como exportar um container Docker para outra máquina

Emulador WineX 3.1 para Debian

Leitura recomendada

Informações completas sobre os arquivos numa pasta

Screen (janelas) no modo shell?

Expressão regular para validar um IP

sed - Eliminando linhas em branco

Ações condicionais no SED

  

Comentários
[1] Comentário enviado por mauricio123 em 08/06/2020 - 11:54h


Boa dica. Vai agregar meu conhecimento.

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



Contribuir com comentário