http://bbs.csdn.net/topics/390272012 帮完成了这个问题,收藏下
use strict; use File::Find; use Getopt::Std; my @allcsvfile; my @targetfile; if($#ARGV == -1 ) { print "使用格式如下:perl list.pl 路径 关键字 > 保存文件路径\n"; exit; } sub searchfile { my $path = @_[0]; open(MYHANDLE,$path); my @str = <MYHANDLE>; for my $k (@str) { #print $k,"\n"; if($k =~ /.*$ARGV[1].*/) { push @targetfile,$path; } } } sub test{ if($_ =~ /.+\.csv$/) { my $path = $File::Find::name; $path =~ s/\//\\/g; push @allcsvfile,$path; searchfile($path); } } find \&test,"$ARGV[0]"; print "all csv file:\n"; foreach (@allcsvfile) { print $_,"\n"; } print "all target csv file:\n"; foreach (@targetfile) { print $_,"\n"; }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。