徐小玉的博客。
分类:
2008-02-29 10:31:32
#!/usr/bin/perl -w
use strict;
use IO::Socket;
my $size;
my @totalsize;
my $OUT; #输出文件句柄
open SOU," < chk.log"; #打开文件。
system('rm -f *.chk'); #删除原由文件。
system('rm -f chk.log'); #删除原有的文件列表
#######生成列表文件。
my $RGV; #日志文件句柄
open RGV,">>chk.log" or die "cant' open the file!";
my $file_a = `ls *.dat`;
my @array = split(/\n/, $file_a);
foreach (@array){
print;
print RGV "$_\n";
print "\n";
}
close(RGV);
#######生成列表文件。
####生成校验文件
foreach(
{
open FILE ,"< $_";
my $file=$_; #文件名。
chomp($file);
open OUT ,">$file.chk"; # 输出的校验文件的名称
@totalsize=stat(FILE);
$size = $totalsize[7]; #文件大小
chomp($size);
my $len =` head -n 1 $file |awk '{print length(\$0)}' `;
my $length = $len + 1;
my $count = $size / $length;# 采用文件大小/行数的方法,得到文件的行数
chomp($count);
print OUT " $file,$count,$size\n"; # 写入校验文件的内容。
close(OUT);
close(FILE);
}
####生成校验文件完成。