[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [shell-script] Problemas com SED
From: |
Marcio Gil |
Subject: |
RE: [shell-script] Problemas com SED |
Date: |
Mon, 28 Dec 2009 22:43:01 -0200 |
Mas tem uma maneira mais simples:
$ echo $OLD_SOURCE1
<raid1Device>sdd1</raid1Device>
$ echo $NEW_SOURCE1
<raid1Device>sdc1</raid1Device>
$ echo $OLD_SOURCE1 | sed "s#$OLD_SOURCE1#$NEW_SOURCE1#g"
<raid1Device>sdc1</raid1Device>
$ echo $OLD_SOURCE1 | sed "s%$OLD_SOURCE1%$NEW_SOURCE1%g"
<raid1Device>sdc1</raid1Device>
$ echo $OLD_SOURCE1 | sed "s?$OLD_SOURCE1?$NEW_SOURCE1?g"
<raid1Device>sdc1</raid1Device>
(substitua o "/" do comando "s" por qualquer outro símbolo que não
exista nos seus padrões)
> -----Original Message-----
> From: Marcio Gil
>
> $ OLD_SOURCE1="<raid1Device>sdd1</raid1Device>"
> $ NEW_SOURCE1="<raid1Device>sdc1</raid1Device>"
> $ OLD_PAT1=`echo $OLD_SOURCE1 | sed 's/\\//\\\\\//g'`
> $ echo $OLD_PAT1
> <raid1Device>sdd1<\/raid1Device>
> $ NEW_PAT1=`echo $NEW_SOURCE1 | sed 's/\\//\\\\\//g'`
> $ echo $NEW_PAT1
> <raid1Device>sdc1<\/raid1Device>
> $ echo $OLD_SOURCE1 | sed "s/$OLD_PAT1/$NEW_PAT1/g"
> <raid1Device>sdc1</raid1Device>
> $
>
> > -----Original Message-----
> > From: Eduardo Lucas
> >
> > pessoal..
> > quero substituir com sed..uma linha num arquivo texto
> >
> > esta variavel..;
> > OLD_SOURCE1 tem o texto: <raid1Device>sdd1</raid1Device>
> > por esta variavel..:
> > $NEW_SOURCE1 tem o texto: <raid1Device>sdc1</raid1Device>
> >
> > tentei a seguinte linha cat /root/.source/default.xml |sed Sed
-e
> > "s/$OLD_SOURCE1/$NEW_SOURCE1/g" > tmp_config
> > mas... me retorna o seguinte erro:
> >
> > sed: -e expression #1, char 37: unknown option to `s'
> >
> > o que devo fazer?
> > Alguma idéia? tentei.."?",..mas..nao entendi!..mmuito bom"!
> >
>