perl如何遍历指定文件夹下的指定扩展名文件并读取内容
发布网友
发布时间:2022-12-10 07:18
我来回答
共1个回答
热心网友
时间:2024-01-07 11:34
不知道你这里读取具体指什么,我就把文件名打印出来,把文件内容打印出来吧。(程序指定两个参数,第一个参数是指定的文件夹名,每二个参数是指定的扩展名。)
#!/usr/bin/perl
use strict;
use warnings;
die "Usage: $0 <dir> <extion>\n" unless @ARGV == 2;
my $Dir = $ARGV[0] ;
my $Ext = $ARGV[1] ;
opendir(DH, "$Dir") or die "Can't open: $!\n" ;
#读取指定文件夹下面的指定扩展名的文件名,保存到数组里。
my @list = grep {/$Ext$/ && -f "$Dir/$_" } readdir(DH) ;
closedir(DH) ;
chdir($Dir) or die "Can't cd dir: $!\n" ;
foreach my $file (@list){
open(FH, "$file") or die "Can't open: $!\n" ;
print "$file:\n" ;
while(<FH>){
print ;
}
print "\n";
close(FH) ;
}