[SP-pm] Problema com opendir/readdir
claudio at dpreferencial.com.br
claudio at dpreferencial.com.br
Mon May 4 15:32:32 PDT 2009
Valeu Thomas..
vou testar..
obrigado!
----- Original Message -----
From: "Thomas Britis" <thomas at tcnet.com.br>
To: <saopaulo-pm at mail.pm.org>
Sent: Monday, May 04, 2009 7:28 PM
Subject: Re: [SP-pm] Problema com opendir/readdir
1- para testar se é um diretório, utilize -d ao invés de -z.
2- .= concatena ao invés de vc usar $dtudo = $dtudo . $dPasta.
Sem o uso de módulos, eu faria algo assim:
use strict;
use warnings;
# Utilize isso em todos os seus programas.
my $tp = q(/etc);
my $gProj = q(file.xml);
my $dtudo;
opendir (my $dir, $tp) or die ("Erro: $!");
while (my $path = readdir ($dir)) {
if (-d $path) { # Eh um diretorio
if (-e qq($tp/$path/$gProj)) { # O arquivo existe.
$dtudo .= $path, "\n";
}
}
closedir ($dir);
print $dtudo;
Não testei, mas acho que é isso.
claudio at dpreferencial.com.br wrote:
> Perl..soall, boa noite!
>
> Sou iniciante em perl.
>
> Estou com dificuldade em usa os comandos
> opendir/ readdir
>
> Fiz um código bem simples:
>
> opendir(Dir,$tp) or die("Dir não existe: $!");
> while($dPasta=readdir(Dir)){
> my $Dor = $tp . $dPasta;
> if(-z $Dor){ # testa se é um sub-diretório
> my $dirtem = $Dor . "/" . $gProj . ".xml";
> if(-e $dirtem ){
> $dtudo = $dtudo . $dPasta . "\n";
> }
> }
> }
> closedir(Dir);
> print "Content-type: text/html\n\n";
> print $dtudo;
>
> 1º - rodo e dá OK
> 2º - crio uma pasta no path para onde aponto o opendir
> 3º - rodo e dá ERRADO .. retorna o mesmo conteúdo da primeira rodada.
>
> Parece que o resulado fica na memória.
>
> Se alguém puder me dar uma luz,
>
> desde já agradeço a todos.
>
>
> Claudio H.Binaghi
> claudio at dpreferencial.com.br
> 5511 3288.4840
>
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm at pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>
>
--
Thomas Storino Britis
TCNet Informatica e Telecomunicacoes LTDA
_______________________________________________
SaoPaulo-pm mailing list
SaoPaulo-pm at pm.org
http://mail.pm.org/mailman/listinfo/saopaulo-pm
--
No virus found in this incoming message.
Checked by AVG.
Version: 7.5.557 / Virus Database: 270.12.11/2089 - Release Date: 30/4/2009
17:53
More information about the SaoPaulo-pm
mailing list