第1个回答 2012-02-08
前提,你windows下装了perl环境。
代码:test.pl 'c:\usrdirctory' 'd:\out.txt'
两个参数分别为:你要遍历的目录路径;你要保存有用信息的文件路径。
如果不方便用命令行调用的话,就写死在下面的$dir,$dst后面。
例如 $dir = 'c:\usrdirctory';
#!/usr/bin/perl
my $dir = $ARGV[0];
my $dst = $ARGV[1];
$dst ||= "temp_log.txt";
if (!-d $dir) {
print "$dir is not a valid directory!\n";
exit(-1);
}
if (!opendir DIR , $dir){
print "cannot open dir, $dir\n";
exit(-1);
}
else{
foreach (readdir DIR) {
if ($_ =~ /\.log$/) {
print $_,"\n";
$out .= "$_\n";
}
}
closedir DIR;
}
if (!open FILE,">$dst"){
print "open file,$dst failed!\n";
exit(-1);
}
else{
print FILE $out;
close FILE;
}
print "Done!\n";
exit(0);