首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

返回某路径下的所有文件夹名称和返回某路径下的所有文件名[循环返回]解决办法

2012-03-23 
返回某路径下的所有文件夹名称和返回某路径下的所有文件名[循环返回]返回某路径下的所有文件夹名称和返回

返回某路径下的所有文件夹名称和返回某路径下的所有文件名[循环返回]
返回某路径下的所有文件夹名称和返回某路径下的所有文件名[循环返回]

[解决办法]
if(-d $pathname) {
# $pathname 是目录名
} else {
# $pathname 是文件名
}
[解决办法]
不知道你到底想要什么结果,
递归的寻找,然后将每个结果放到一个数组里就OK了

#!/usr/bin/env perl

my @files = ();
my @dirs = ();

sub findfile {
my $dir = shift;
opendir DIR, $dir;
foreach my $entry(readdir(DIR)) {
next if($entry =~ /^\.+$/);
my $ename = "$dir/$entry ";

if(-d $ename){
push(@dirs, $ename);
findfile($ename);
}else {
push(@files, $ename);
}
}
close DIR;
}

findfile($ARGV[0]);
print "=======DIRs\n ";
foreach my $ent(@dirs) {
print "$ent\n ";
}

print "=======FILEs\n ";
foreach my $ent(@files) {
print "$ent\n ";
}

[解决办法]
递归遍历目录?

use File::Find;
find sub { print $File::Find::name, "\n " }, $path;

[解决办法]
while ( <*> ) {
print "$_\n ";
}

> > 不知道如何返回。
什么叫如何返回?
[解决办法]
while ( <*> ) {
print "$_\n " if(-d $_);
}

热点排行