pktsVsBytesA.pl
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:1k
源码类别:

通讯编程

开发平台:

Visual C++

  1. #!/usr/bin/perl -w
  2. use strict 'refs';
  3. use strict 'subs';
  4. if ($#ARGV != 3) {
  5.   &usage;
  6.   exit;
  7. }
  8. sub usage {
  9.   print STDERR " usage: $0 <pattern> <time> <noTries> <bit>n";
  10.   exit;
  11. }
  12. my $time = $ARGV[1] - 10;
  13. my $tries = $ARGV[2];
  14. my $bit = $ARGV[3];
  15. for ($tryNo=1; $tryNo <= $tries; $tryNo++) { 
  16.   my @a = <$ARGV[0]-$tryNo-*>;
  17.   
  18.   foreach $file (@a) {
  19.     my ($pre1, $try, $suffix) = split(/-/,$file);
  20.     my $i = $suffix;
  21.     print STDERR "Doing $file tmp-$tryNo-$suffixn";
  22.     
  23.     my $command2 = "awk 'BEGIN {k=$i} {if ($4!=0 && $2==$time) if ($4<=k/2) {if ($4%2!=0) shortBig+=$6; else shortSmall+=$6} else if ($4%2!=0) longBig+=$6; else longSmall+=$6} END {div = shortBig+shortSmall+longBig+longSmall; print $i, shortBig/shortSmall, longBig/longSmall, shortBig/div, shortSmall/div, longBig/div, longSmall/div}' $file >> data$bit-$tryNo";
  24.     
  25.     # output: i, shortBig/shortSmall, longBig/longSmall, 
  26.     #    shortBig, shortSmall, longBig, longSmall.
  27.     # print "$command2", "n";
  28.     system($command2);  
  29.     
  30.   }
  31.   system("sort -n +0 -1 data$bit-$tryNo -o data$bit-$tryNo");
  32. }