[Cascavel-pm] File::Linting nao funciona

Igor Sutton igor.sutton em gmail.com
Quinta Junho 8 07:16:44 PDT 2006


Patty,

Eu não sou tão mau assim, os que me conhecem pode confirmá-lo. Vamos começar
do início, que é: qual é o seu problema? Se você quer listar o conteúdo de
um diretório, existem maneiras mais fáceis de fazê-lo, como por exemplo:

<code>
use strict;
use warnings;

my $basedir = "/var/www";

opendir my $dir, $basedir or die "Problemas ao abrir diretório: $!";
while (defined(my $file = readdir($dir))) {
    print "Arquivo: $file\n";
}
</code>

Outra opção que você tem é utilizar glob (assumindo que o trecho modificado
seja o de depois da definição de variável $basedir:

<code>
foreach my $file (glob("${basedir}/*")) {
    print "Arquivo: $file\n";
}
</code>

Porém esta utilização é desaconselhada.

Eu preferiria uma solução dessas pois é independente do sistema operacional.

[snip]
>
> #!/usr/bin/perl
> > >
> > > use File::Listing qw(parse_dir);
> > >
> > > for (parse_dir(`ls -l`))
> > > {
> > > print "teste";
> > >      ($name, $type, $size, $mtime, $mode) = @$_;
> > >      next if $type ne 'f'; # plain file
> > > }
> > >
> > > [snip]

-- 
Igor Sutton Lopes
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20060608/2bf2a89c/attachment-0001.html 


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