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

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

Re: [shell-script] Substituir valores em um arquivo


From: Eliphas Levy Theodoro
Subject: Re: [shell-script] Substituir valores em um arquivo
Date: Fri, 28 Dec 2001 16:28:41 -0200 (BRST)

Cassiano Sombrio_Hp, @ 16:00:

> Bah, e não é que funciona?! :)
> Brincadeira. Valeu mesmo, é isso que eu preciso, e justamente quando não
> houver mais barra invertida é que deve ser "fechado" o endereçamento das
> linhas a alterar. Sinto muito pra quem tiver que dar manutenção nesse
> script. :)
> Só que eu não entendi uma coisa: os endereços do comando a executar não são
> absolutos? Tipo, não é da primeira linha que ele achar a primeira expressão
> regular até a primeira linha que ele achar a segunda expressão regular? Ou o
> segundo é relativo ao primeiro?

Hmm. Acho que entendi a pergunta mas temo não responder bem em palavras.
Vai em regex ':)

O endereçamento pode ser feito:

Em uma linha específica:   3           s/a/b/
                       :   /bla/       s/a/b/
Da linha X a linha Y   :   1,5         s/a/b/
                       :   /bla/,/ble/ s/a/b/

A expressão ou conjunto de expressões (entre chaves) após o
endereçamento vai ser executado só nessa área.

Então, tendo:
sed '1,/ble/ s/a/b/ ; s/c/d/'

Vai, da primeira linha até encontrar 'ble', trocar o primeiro 'a' por
'b'; e em todo o arquivo, trocar o 'c' por 'd'.

Se colocarmos as chaves:
sed '1,/ble/ { s/a/b/ ; s/c/d/ ; }'

Ou especificar separadamente:
sed '1,/ble/ s/a/b/ ; 1,/ble/ s/c/d/'

O endereço vale para as duas expressões.

Entendi a pergunta? Entendeu a resposta? ':)


> -----Original Message-----
> From: Eliphas Levy Theodoro [mailto:address@hidden]

> /<propriedade>/,/[^\]$/ s/../../

-- 
Eliphas

Anyone sending unsolicited bulk email (UBE, SPAM) to this address will
be charged a $25 handling fee plus a $5 network traffic fee per
started kilobyte. By extracting my address from this message or its
header, you agree to these terms.
Nevertheless, spammers trying to auto-extract addresses from this
message will definitely want to include address@hidden, address@hidden,
and address@hidden




reply via email to

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