我的主要目录具有很多子文件夹,每个文件夹包含一千个文件。我需要使用.xml
,aux
或.tex
的扩展名获取所有文件的名称,然后将它们存储在数组中。
use File::Find::Rule;
$path_dir = "d:/testing/Projects/";
my @allfiles = File::Find::Rule->file()->
name( "*.xml", "*.aux", "*.tex" )->
in( $path_dir );
print join "n", @allfiles;
system 'pause';
上面的代码工作正常,但运行需要一分钟。有什么办法可以更快地执行此操作?
尝试替换此行:
name( "*.xml", "*.aux", "*.tex" )->
与此:
name( qr/.(xml|aux|tex)$/ )->