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

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

Re: [shell-script] Substituindo linha com sed


From: Paulo Bettega
Subject: Re: [shell-script] Substituindo linha com sed
Date: Mon, 07 Jul 2014 23:41:19 -0300
User-agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.6.0

Olá arkan , o char 36 acho que é a barra etc/sfs,
o sed enxerga s/// nesse caso como s/^IPADDRESS1=.*/IPADDRESS1=`cat /
Tem que escapar as barras do caminho, ou então usar outro delimitador
que não precise ser escapado.

$ sed 's/^IPADDRESS1=.*/IPADDRESS1=`cat \/etc\/sfs\/hostname.info | head -n 1`/' <<<'IPADDRESS1=`cat /etc/sfs/hostname.info`'
IPADDRESS1=`cat /etc/sfs/hostname.info | head -n 1`

$ sed 's:^IPADDRESS1=.*:IPADDRESS1=`cat /etc/sfs/hostname.info | head -n 1`:' <<<'IPADDRESS1=`cat /etc/sfs/hostname.info`'
IPADDRESS1=`cat /etc/sfs/hostname.info | head -n 1`

Abraços Paulo Bettega


On 07-07-2014 23:21, address@hidden [shell-script] wrote:
Boa noite senhores. Me deparei com uma questão aqui que após algumas horas 
tentando, não consegui
resolver.

Basicamente é uma substituição de linha que não quer funcionar.


Tenho uma linha com o seguinte conteúdo:


IPADDRESS1=`cat /etc/sfs/hostname.info`


Preciso substitui-la para:


IPADDRESS1=`cat /etc/sfs/hostname.info | head -n 1`


O problema acontece quando tento realizar esta modificação com o comando:


sed -i 's/^IPADDRESS1=.*/IPADDRESS1=`cat /etc/sfs/hostname.info | head -n 1`/' 
createCsa


Recebo este erro:

sed: -e expression #1, char 36: unknown option to `s'


Tentei de outras formas, em algumas o comando executava a linha e gravava o 
valor e em outras era o
este erro que aparecia.







reply via email to

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