#!/bin/perl $infile=$ARGV[0]; $granularity=$ARGV[1]; $sum=0; $sum_total=0; $clock=0; $maxrate=0; $init=0; $pktcnt=0; $lastet=0; #open file open (DATA,"<$infile") || die "Can not open the $infile $!"; while (<DATA>) { @x=split(‘ ‘); if ($init==0) { $start=$x[0]; $init=1; } if ($x[0]-$clock<=$granularity) { $sum=$sum+$x[1]; $pktcnt=$pktcnt+1; $sum_total=$sum_total+$x[1]; $lastet=$x[0]; #print "$lastet-----$sum-----$pktcnt\n"; } else { $avgrtt=$sum/$pktcnt; $pktcnt=0; if ($avgrtt>$maxrtt) { $maxrtt=$avgrtt; } #print STDOUT "$x[1]:$avgrtt s\n"; #print "$x[0] $avgrtt s\n"; print "$lastet $avgrtt\n"; $clock=$clock+$granularity; $sum_total=$sum_total+$x[1]; $sum=$x[1]; $pktcnt=1; } #compute the last average rtt } close DATA; exit (0);调用方式 perl thisfile.pl filename 0.1
pl脚本处理ns2的trace文件计算平均时延,布布扣,bubuko.com
原文:http://blog.csdn.net/doupei2006/article/details/21294353