[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Apanhando com script - RESOLVIDO
From: |
Bruno Gunter |
Subject: |
Re: [shell-script] Apanhando com script - RESOLVIDO |
Date: |
Mon, 31 Aug 2009 16:51:10 -0300 |
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 <address@hidden>
>
> >
> >
> > 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]
>
>
>
>
>