实例: 统计 /diska/logs/2013-03-06/email_2013-03-06.txt 的行数,日期为变量;
这里需要让perl 取多个文件,方法如下:
my $log_dir = '/diska/logs/';
my @files = glob "$log_dir/*/email*.txt ;
定义一个计数的变量;
my $c = 0;
for (@files) {
my $file = $_;
my $lines = `cat $file|wc -l`; #计算行数,调用shell 命令,这里也可以用perl 的方法实现
$c += $lines;
}
print $c;
整个程序如下:
#!/usr/bin/perl
use
strict;
use warnings;
#my
$work_dir='/diska/logs';
#my @files= glob
"$work_dir/email_20*";
#for (@files)
{
# my $file = $_;
# my $lines = `cat $file|wc -l`;
# print $lines;
#}
my $c=0;
my $work_dir='/diska/logs';
my @files= glob
"$work_dir/reg_log/2013-*/email_*.txt";
for (@files) {
my $file =
$_;
my $lines = `cat $file|wc -l`;
#print $lines;
$c +=
$lines;
}
print $c;
没有评论:
发表评论