加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl 在指定文件夹中的文件中查找包含指定字符的行

发布时间:2020-12-16 00:21:39 所属栏目:大数据 来源:网络整理
导读:本文转载于 http://blog.sina.com.cn/s/blog_55cbb3d10100pfjl.html ? 字符串提取是个麻烦有需要耐心的工作,如果针对一个文件,可以利用正则表达式提取某些字符串,如果你有成百上千个文件,则需考虑循环或文件夹操作,下面的代码介绍了如何提取一个文件夹

本文转载于 http://blog.sina.com.cn/s/blog_55cbb3d10100pfjl.html

?

字符串提取是个麻烦有需要耐心的工作,如果针对一个文件,可以利用正则表达式提取某些字符串,如果你有成百上千个文件,则需考虑循环或文件夹操作,下面的代码介绍了如何提取一个文件夹(含子目录)中较多文件里的某一固定字符串。

?

$searchdir="c:/folder"; #指定根文件夹路径
chomp $searchdir;
$searchstr="N2O_emission";
#指定欲提取的字符串
chomp $searchstr;
opendir(DIRHANDLE,$searchdir) || die "Cann't open $searchdir !";
while($file=readdir DIRHANDLE) {
??????? if (-d "$searchdir/$file") {
??????????????? printf "$searchdir/$file is a directory!n";
??????? } else {
??????????????? open(FileHandle,"$searchdir/$file") || die "cann't open $searchdir/$file !n";
??????????????? $lines=1;
??????????????? while (defined($line=<FileHandle>)) {
??????????????????????? $back=index($line,$searchstr);
??????????????????????? if ( $back != -1 ) {
??????????????????????????????? print"$file:$lines:$line";
#打印提取到的行 ??????????????????????? } ??????????????? $lines=$lines+1; ??????????????? } ??????? } ??????? close(FileHandle); } closedir(DIRHANDLE);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读