Perl递归遍历指定文件下的文件

#!/usr/bin/perl -w
use strict;
#use autodie;
#use File::HomeDir; #第三方模块,不管在什么操作系统上都能进入指定用户的主目录

my $parentDir = 'F:\web\perl\perl program\littleCamp';
my $partInfo = '.+\.pl$'; #正则表达

&search_file($parentDir, $partInfo);

sub search_file
{
    my ($dir, $partInfo) = @_;
    #print $partInfo, "\n";
    opendir my $dh, $dir or die "Cannot open dir $dir\n";
    my @files = readdir $dh; #标量上下文和列表上下文
    foreach my $file (@files)
    {
        my $filePath = "$dir/$file";
        if(($file =~ m#$partInfo#i) and (-f $filePath)) #-f 判断是否是文件
        {
            print "$filePath\n";
        }
        if((-d $filePath) and ($file ne '.') and ($file ne '..')) #-d判断是否是目录
        {
            &search_file($filePath, $partInfo);
        }
    }
}
system 'pause';

转载于:https://www.cnblogs.com/v-BigdoG-v/p/7398606.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值