#file name: listdir.pl
$dir = $ARGV[0];
sub listdir {
my @arr, $j = 0;
for($i=0;$i<=$#_;$i++) {
if(-d $_[$i]) {
if(opendir($handle, $_[$i])) {
while($dir = readdir($handle)) {
if(!($dir =~ m/^/.$/) and !($dir =~ m/^(/./.)$/)) {
print "$dir";
if(-d $_[$i]."//$dir") {
$arr[$j++] = $_[$i]."//$dir";
print "/t[DIR]"
}
print "/n";
}
}
closedir($handle);
}
}
}
if($j>0) {
listdir (@arr);
}
}
listdir ($dir);
调用方法:
perl listdir.pl c:/downloads