[Cascavel-pm] Substituição de string e gravação no arquivo

Igor Sutton igor.sutton em gmail.com
Quinta Julho 27 09:35:35 PDT 2006


Oi,

Você pode testar utilizar um código semelhante a este - fazendo o Perl se
portar mais ou menos como o sed:

<code>
#!/usr/bin/perl

# diz para o Perl usar inline edit e configura a extensao do arquivo
# de backup
$^I = ".bak";

# faz as modificacoes necessarias.
while (<>) {
    s/SNAPSHOT/1.1/ if /SNAPSHOT/;
}
</code>
Utilização:

$ perl prog.pl arquivo.xml

Em 27/07/06, Paola Montini <PMontini em ymf.com.br> escreveu:
>
>  Pessoal,
>         Tenho um arquivo XML no qual existe a string SNAPSHOT na tag de
> versão.Preciso encontrar essa tag dentro do arquivo e substituí-la pelo
> número da versão
>
> salvando o arquivo com essa informação nova.
>         Fiz o script de teste abaixo, porém o que esta acontecendo, é ele
> encontra a string SNAPSHOT, porém não grava nada no arquivo, pior apaga o
> conteúdo do arquivo inteiro...
>
>         Please o que estou fazendo de errado:
>
> #! /usr/bin/perl
> $local = "arquivoxml.xml";
> open (ARQXML,"<$local");
> $nome = SNAPSHOT;
> @texto = <ARQXML>;
> foreach $matriz (@texto)
>      {
>         if ($matriz =~ /$nome/)
>          {
>             print $matriz;
>             $matriz =~ s/$nome/Beta2006.2.1/g;
>            print ARQXML $matriz;
>                  }
> close (ARQXML);
>
> ps: sei que o comando de substituição tb está funcionando corretamente
> pois quando peço apenas para substituir e "printar" em tela funciona, o
> problema está realmente com o arquivo. Também é valido dizer que já tentei
> abrir o arquivo com > e >> e acontece a mesma coisa.
>
> TKS galera
>
>
> bPaola Montini
> YMF-Consultoria
> Fone: 5010-9220
>
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>
>


-- 
Igor Sutton Lopes
t: +55 51 9627.0779
e: igor.sutton em gmail.com
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20060727/395efe5e/attachment.html 


Mais detalhes sobre a lista de discussão Cascavel-pm