如何用perl列出一个文件夹下的所有文件(包括子文件夹下的文件)?

时间:2022-12-31 09:54:57
如何用perl列出一个文件夹下的所有文件(包括子文件夹下的文件)?
输入:一个文件目录 名
输出:显示该文件夹下的所有文件(包括子文件夹下的文件)

3 个解决方案

#1


opendir();
readdir();

#2


要用递归才能够列出所有的。

#3


$PATH="F:/HOMEWORK/perl";
&SeeDir($PATH);

sub SeeDir
{
my ($path,$DIR)=@_;
if(chdir($path))
{
opendir($DIR,$path);
my $line=readdir($DIR);
while ($line)
{
if($line ne '.' && $line ne '..')
{
if(chdir("$path/$line"))
{
SeeDir("$path/$line");
}
else
{
print "$path/$line\n";
}
}
$line=readdir($DIR);
}
closedir($DIR);
}
}

#1


opendir();
readdir();

#2


要用递归才能够列出所有的。

#3


$PATH="F:/HOMEWORK/perl";
&SeeDir($PATH);

sub SeeDir
{
my ($path,$DIR)=@_;
if(chdir($path))
{
opendir($DIR,$path);
my $line=readdir($DIR);
while ($line)
{
if($line ne '.' && $line ne '..')
{
if(chdir("$path/$line"))
{
SeeDir("$path/$line");
}
else
{
print "$path/$line\n";
}
}
$line=readdir($DIR);
}
closedir($DIR);
}
}