Renato, O SED não é nada ruim para trabalhar com caracteres especias. Basta você "escapá-los" (\) que tudo funcionará bem.
Exemplo: sed 's/\<\%*/$titulo/g' *.asp O mesmo vale para o AWK que seria uma boa alternativa ao seu Perl também. []'s Gunter On Mon, 2009-08-31 at 12:22 -0300, Renato wrote: > > #!/bin/sh > cd /home/*/metaforas/ > for y in `ls *.asp`; > echo $y; > titulo=$(cat $y |grep "pageTitle ="|cut -d \" -f2); > echo $titulo; > sed -i "s/linhatemptitle/<TITLE>$titulo<FIMTITLE>/g" $y; > done > exit 0 > > O SED é muito ruim pra trabalhar com caracteres especiais, > principalmente > "\" e "/". Eu apanho! Por isso fiz o trabalho em partes: > > - Transformei a linha <TITLE><%= pageTitle %></TITLE> em na linha > "linhatemptitle", usando Perl. > - Usei o script acima pra achar a linha "linhatemptitle" e substituir > por > <TITLE>$titulo<FIMTITLE>. > - Usei novamente o Perl para encontrar e substituir <FIMTITLE> por > </TITLE> > > Desculpem por não ter feito da maneira correta, pois estava com muita > pressa > de resolver isso. > > Obrigado a todos pelas dicas, sempre tão valiosas! > > []'s > Renato > > Para criptografia e assinatura digital use minha CHAVE PÚBLICA PGP: > http://www.rnp.br/keyserver/pks/lookup?op=get&search=0xA8BCCE4CFD92202C > > 2009/8/31 Bruno Gunter <[email protected]> > > > > > > > Basicamente: > > > > sed -i 's/<% pageTitle = "TÍTULO DA PÁGINA" %>/TÍTULO DA PÁGINA/g' > *.asp > > > > > > On Sun, 2009-08-30 at 18:49 +0000, tche_renato wrote: > > > > > > PessoALL, > > > > > > Eu sei que pra vocês deve ser algo simples, mas estou apanhado pra > > > conseguir fazer o que preciso. > > > > > > Eu tenho centenas de arquivos com esta estrutura: > > > -------------------------------------------------------- > > > <%@ LANGUAGE="VBSCRIPT" %> > > > <% pageTitle = "TÍTULO DA PÁGINA" %> > > > > > > <HTML> > > > <HEAD> > > > <TITLE><%= pageTitle %></TITLE> > > > -------------------------------------------------------- > > > Acontece que preciso substituir a string %= pageTitle % pelo que > está > > > entre aspas TÍTULO DA PÁGINA. > > > > > > Como fazer isso? > > > > > > []'s > > > Renato > > > > > > > > > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > >
