shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Sed :: Não substituir entre dois intervalos.


From: Fabio R. Medeiros
Subject: Re: [shell-script] Sed :: Não substituir entre dois intervalos.
Date: Sat, 13 Jul 2013 08:38:49 -0700 (PDT)

Não tenho como testar agora, mas já tentou colocar os endereços entre 
parêntesis:

sed '
(/^\#f1\#/,/^\#ff1\#/ | /^\#f2\#/,/^\#ff2\#/) ! {
s/qwerty/TESTE/g
}' 01


Talvez seja preciso "escapar" os ( )...


________________________________
 De: Rodrigo Boechat <address@hidden>
Para: address@hidden 
Enviadas: Sábado, 13 de Julho de 2013 6:31
Assunto: [shell-script] Sed :: Não substituir entre dois intervalos.
 


  
Pessoal, bom dia!

Como eu faria para não aplicar substituições entre dois intervalos?

Exemplo:

cat >01<<EOF
qwerty
qwerty
#f1#qwerty
qwerty#ff1#
qwerty
#f2#qwerty#ff2#
qwerty
qwerty
qwerty
EOF

Tentando da forma que descrevo abaixo, obtive o seguinte erro:
sed: -e expressão #1, caractere 29: comando desconhecido: `|'

sed '
/^\#f1\#/,/^\#ff1\#/ | /^\#f2\#/,/^\#ff2\#/ ! {
s/qwerty/TESTE/g
}' 01

Andei pesquisando na net e ainda não achei algo parecido.
Preciso encontrar um intervalo, #f1# e#ff1#, ou o outro, #f2# e #ff2#, 
para não executar o s/qwerty/TESTE/g, dentro deles.

Alguém sabe como me ajudar?

Desde jáagradeço!

Rodrigo Boechat

[As partes desta mensagem que não continham texto foram removidas]


 

[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]