当前位置: 代码迷 >> 综合 >> perl:递归找指定文件并筛选
  详细解决方案

perl:递归找指定文件并筛选

热度:73   发布时间:2024-01-20 11:24:16.0

需求:

1.在指定目录下找到指定的文件,并且是递归寻找。

比如在某目录下找到对应的.v文件,并剔除掉不需要的目录文件,将筛选好的文件名

放到指定的文件下或者存到数组里,供后面使用。采用的是perl File::Find功能

#! /usr/bin/perluse 5.010;
use strict;
use warnings;my @dir = '/proj/../modem/units';
my @rtl_array;use File::Find;open my $good_file_fh,'>','good_file.f';find(\&PrintName,@dir);close $good_file_fh;foreach my $each_file (@rtl_array){
say "$each_file";
}sub PrintName{my $path;$path = $File::Find::name;if ($path !~ /verif|(fb_top|m_hsdec_top)_4g|src\/(bak|mbist|non_mbist)/){if ($path =~ /\.v$/){say $good_file_fh "$path";push @rtl_array ,$path;}}}