Perl初级教程 (5) 遍历文件夹内指定扩展名文件,查找匹配关键字的输出。

#!/usr/bin/perl -W
#
# File: find.pl
# License: GPL-2

use strict;
use warnings;
use File::Find;

 

#定义要匹配的关键字


my $str1="20090414095014";
my $str2="Report";

#定义键盘接收输入,第一个为文件夹路径,第二个为文件扩展名。

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" ;
    while(<FH>){

# Perl 本身是大小写区别的,而且对于关键字搜索是借助于正则表达式来完成的。
  if(<FH> =~ /$str2/i){
    print "$file:\n" ; 
   }
    }
    print "\n";
    close(FH) ;
}
# 在CMD模式下调用时切记使用perl程序所在的全路径。

转载于:https://www.cnblogs.com/zencorn/archive/2012/07/25/2608195.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值