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

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

Re: [shell-script] Como trocar e inserir texto dentro de um arquivo usan


From: aurelio
Subject: Re: [shell-script] Como trocar e inserir texto dentro de um arquivo usando o SED?
Date: Thu, 20 Mar 2003 12:02:46 -0300 (ART)

ae charles,

vou me meter (opa!) no meio (opa!!) da conversa de vocês.

 --- Charles Silveira <address@hidden> escreveu: 
> Thobias, funcionou! muito obrigado, valeu mesmo, mas e
> se a linha do arquivo for igual a:
> <document name="02-918-Virtua.htm"
> location="&prj-root;\AtuacaoPratica\Iniciais\02-918-Virtua.htm"
> content-type="text/html"/>
> 
> Como inserir o title="02-918-Virtua.htm" antes do /> ?

faz um troço mais genérico que funca pra ambos os casos,
tipo assim:


$ cat lixo
<document name="foo1.htm">

<document name="foo2.htm"
  content-type="text/html">


$ cat lixo | sed 's/document name=\("[^"]*"\)/& title=\1/'
<document name="foo1.htm" title="foo1.htm">

<document name="foo2.htm" title="foo2.htm"
  content-type="text/html">



thobias: note que o & simplifica o processo de repetição :)


> <address@hidden> escreveu: 
> ---------------------------------
> 
> On Thu, 20 Mar 2003, Charles Silveira wrote:
> 
> > Pessoal, alguém pode me ajudar com a expressão regular
> > no SED para localizar a ocorrencia da string
> > '<document name="OrgaosPublicos">' e substiuir pela
> > string '<document name="OrgaosPublicos"
> > title="OrgaosPublicos">'?
> 
> $ cat file
> lixo
> '<document name="OrgaosPublicos">' e substiuir pela
> '<document name="shell">'
> '<document name="nada" mais algo>'
> '<xxx document name="nada">'
> 
> $ sed '/<document name=\"[^\"]\+\">/
> s/\(\<document name=\)\("[^"]\+\)\>/\1\2\" title=\2/'
> file
> 
> lixo
> '<document name="OrgaosPublicos"
> title="OrgaosPublicos">' e substiuir pela
> '<document name="shell" title="shell">'
> '<document name="nada" mais algo>'
> '<xxx document name="nada">'
> 
> PS: todo o comando sed eh na mesma linha.


=====
-- 
aurelio

_______________________________________________________________________
Busca Yahoo!
O serviço de busca mais completo da Internet. O que você pensar o Yahoo! 
encontra.
http://br.busca.yahoo.com/


reply via email to

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