My perl program opens dos directory and tests all files
using -f. There are 5 files in the directory. Somehow the program recognizes only 3. For 2 others any file test operator does not return any value. Here is a code -
{
($dir,$title)=@_;
opendir (DIR,$dir) || die "cannot open: $!";
@dirfiles =readdir(DIR);
close (DIR);
print " \n";
print "$title Directory Content ...\n";
print "--------------------------------\n";
foreach (@dirfiles)
{
$name=$_;
if ( -d $name)
{ next;
}
$len= length $name;
$spaces=" "x(5-$len);
if (-f $name)
{
$date_string = ctime(stat($name)->mtime);
print "$name $spaces $date_string\n";
}
else
{
$a1=(-A $name);
print "$a1\n";
print "????$name\n";
}
}
}
Does anybody know why perl does not recognize some files ?
using -f. There are 5 files in the directory. Somehow the program recognizes only 3. For 2 others any file test operator does not return any value. Here is a code -
{
($dir,$title)=@_;
opendir (DIR,$dir) || die "cannot open: $!";
@dirfiles =readdir(DIR);
close (DIR);
print " \n";
print "$title Directory Content ...\n";
print "--------------------------------\n";
foreach (@dirfiles)
{
$name=$_;
if ( -d $name)
{ next;
}
$len= length $name;
$spaces=" "x(5-$len);
if (-f $name)
{
$date_string = ctime(stat($name)->mtime);
print "$name $spaces $date_string\n";
}
else
{
$a1=(-A $name);
print "$a1\n";
print "????$name\n";
}
}
}
Does anybody know why perl does not recognize some files ?