- 论坛徽章:
- 0
|
本帖最后由 conn2011 于 2011-03-26 11:00 编辑
- #!/usr/bin/perl -w
- use strict;
- use Data::Dumper;
- my %in;
- open(IN, "file2path") || die "Cannot open file int.txt\n";
- while(<IN>){
- chomp;
- my @line = split(' ',$_);
- $in{$line[1]}{'text'} = $line[3];
- push @{$in{$line[1]}{'value'}},$line[5];
- }
- close IN;
- my %info;
- open(INFO,"file1path") || die "Cannot open file info.txt\n";
- while(<INFO>){
- chomp;
- my @line = split(' ',$_);
- $info{$line[0]} = $line[2];
- }
- close INFO;
- foreach my $key (keys %in){
- my $sum = 0;
- foreach my $value (@{$in{$key}{'value'}}){
- $sum += $value;
- }
- $in{$key}{'avg'} = $sum/scalar(@{$in{$key}{'value'}});
- $in{$key}{'time'} = scalar(@{$in{$key}{'value'}});
- my $tot = $info{$key} ? $info{$key} : 0;
- my $margin = $tot - $in{$key}{'avg'};
- printf "+ %s\t%s\t%10s\t%10s\t%s\n",($key,$in{$key}{'text'},$in{$key}{'avg'},$margin,$in{$key}{'time'});
- }
复制代码 |
|