jeudi 23 juillet 2015

Perl, how to choose a directory

I'm trying to determine which of the content of a folder is a directory and which is a file, I wrote the following but the result is not what I would expect:

opendir DH, $dir or die "Cannot open Dir: $!";
my @dirs = grep !/^\.\.?$/, readdir DH ;
foreach my $files (@dirs) {
    print $files."<br>";
    if ( -d $files ) 
    {
        print $files." is a directory<br>";
    }
}
closedir DH;

The result is something as the example below:

.file1

file.log

file3.zip

file4

file5.zip

dir1.name1.suffix1.yyyy.MM.dd.hh.mm.ss

file5.zip

file6.tar

dir2

dir3.name1.suffix1.yyyy.MM.dd.hh.mm.ss


where the item starting with dir are actual directory, so my question is why the if is failing discover them as such? What am I doing wrong?

Aucun commentaire:

Enregistrer un commentaire