CJ7*_*CJ7 0 recursion perl loops file
在perl我可以通过执行以下操作遍历当前目录中的文件:
foreach $file (<*.*>) {
print "$file found\n";
# do stuff
}
Run Code Online (Sandbox Code Playgroud)
我如何才能对所有子目录中的所有文件执行相同的操作?
File::Find::Rule是一个很好的递归列出文件的模块。
所有文件(如您所问):
use File::Find::Rule qw( );
for my $qfn (File::Find::Rule->in(".")) {
...
}
Run Code Online (Sandbox Code Playgroud)
只是带有“.”的文件 以他们的名义(根据您的示例):
use File::Find::Rule qw( );
for my $qfn (File::Find::Rule->name("*.*")->in(".")) {
...
}
Run Code Online (Sandbox Code Playgroud)
添加->file将结果限制为纯文件(过滤目录)。