find通常被用来查找特定路径下的特定文件,用来搜索文件名非常有用,是perl中使用非常广泛的文件 *** 作函数。
先看个例子:
use file::Find;
find(\&Printname,@curDir);
sub Printname{
my $path;
if (/$reg/) {
$path = $file::Find::name;
$path =~ s/\//\\/g;
$path =~ s/\\+/\\/g;
print LST "$path\n";
}
}
这是一个find函数的经典使用方法。它包含在file模块中,有两个参数。第一个一般为子程序,第二个为搜寻的路径。这里路径是用列表表示的,可以存放多个路径,即可以同时对几条路径进行搜索。每遇到一个文件,子程序都会被调用。我们需要判断,找到的文件是否与我们想要的文件相匹配。
file::Find方式具有特殊变量,将被赋予特定的信息,显示如下:
(1)$_包含目录中的当前文件名
(2)$file::Find::dir包含当前目录名
(3)$file::Find::name包含$file::Find::dir/$_
在寻找过程中,我们都位于目录$file::Find::dir下。这是可以用正则表达式选出我们寻找的文件。注意在匹配时“$”代表一个字符串最后的匹配而“^”代表与开头匹配。
总结以上是内存溢出为你收集整理的Perl中find的用法全部内容,希望文章能够帮你解决Perl中find的用法所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)