[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] D�vida com o sed
From: |
aurelio |
Subject: |
Re: [shell-script] Dúvida com o sed |
Date: |
Wed, 2 Apr 2003 09:19:26 -0300 (ART) |
ae mauricio,
--- "Mauricio B. C. Vieira" <address@hidden> escreveu:
> cat teste | sed "/$A/{s/::/:$B:/g;}" > teste
> Funciona(deve funcionar), mas se vc fizer
náin, náin, trunca do mesmo jeito.
# echo vou sumir > a
# cat a | sed 's/u/.../g' > a
# cat a
#
> sed "/$A/{s/::/:$B:/g;}" teste > teste
> ou
> sed "/$A/{s/::/:$B:/g;}" <teste > teste #dá no mesmo
> ele trunca e vc perde o arquivo.
ok
> sed "/$A/{s/::/:$B:/g;}" -> quando vc achar $A, execute a substuição
> com
> o $B
esse sed é *quase* o mesmo que o grep+sed do albérico.
só que ele ainda joga todas as linhas no resultado, não
filtrando-as.
> > grep $A teste | sed "s/::/:$B:/"g
só em sed fica
sed -n "/$A/{s/::/:$B:/g;p;}" arquivo > arquivo.tmp
mv arquivo.tmp arquivo
> On Tue, Apr 01, 2003 at 06:05:42PM -0300, Alberico Moreira da Silva
> wrote:
> > Oi sou novo em criação de scripts shel e tenho uma dúvida.
> >
> > O comando "sed" abaixo ao ser executado mostra somente na saida
> padrão a alteração efetuada, porém gostaria que o mesmo seja alterado
> no próprio arquivo teste, alguém poderia me ajudar ?????
> > Obs.: Lembrando que a intenção é alterar no próprio arquivo e não
> direciona-lo para outro.
> >
> > grep $A teste | sed "s/::/:$B:/"g
=====
--
aurelio
_______________________________________________________________________
Yahoo! Mail
O melhor e-mail gratuito da internet: 6MB de espaço, antivÃrus, acesso POP3,
filtro contra spam.
http://br.mail.yahoo.com/