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

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

Re: [shell-script] sed expressao regular


From: Ronaldo Ferreira de Lima
Subject: Re: [shell-script] sed expressao regular
Date: Sun, 3 Aug 2014 10:01:37 -0300
User-agent: mutt-ng/devel-r804 (Linux)

On Sun, Aug 03, 2014 at 02:18:44AM -0300, Paulo Bettega address@hidden 
[shell-script] wrote:
[...]
> Com o comando c não consegui escapar a chave que fecha o grupo de comandos,
> só funcionou quebrando a linha, sem colocar barra no final (deve ser isso
> que está escrito no 'info sed', acho que eu não entendi direito).
[...]
> sed '1,/valor 1/ {/valor 1/ c\valor 1 = 2345\
> valor 2 = asdf\
> valor 3 = zxcv
> }' <<<'texto1.1 {
[...]
> Abraços Paulo Bettega
[...]

A contrabarra permite inserir quebras de  linha no texto de saída para o
comando  "c",  usa-se duas  contrabarras  para  inserir uma  contrabarra
literal  no texto.  No caso  acima, a  primeira contrabarra  poderia ser
removida sem problemas.

Você provavelmente deve ter visto o seguinte erro:

    sed: -e expression #1, char 0: unmatched `{'

Tudo é considerado 'TEXT' pelo comando até "que ele encontre" uma quebra
de linha literal sem contrabarra.

Para não  ser obrigado e inserir  quebras de linha literais  em 1liners,
você deve usar a sintaxe:

    $ sed -e'1,/valor 1/ {/valor 1/ cvalor 1 = 2345\nvalor 2 = asdf\nvalor 3 = 
zxcv' -e'}'

-- 
"Não manejo bem as palavras
Mas manipulo bem as strings."
------------------------------
http://tecnoveneno.blogspot.com


reply via email to

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