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

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

Re: [shell-script] Apanhando com script - RESOLVIDO


From: Renato
Subject: Re: [shell-script] Apanhando com script - RESOLVIDO
Date: Mon, 31 Aug 2009 12:22:50 -0300

#!/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]



reply via email to

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