我編寫了一個Perl腳本,用於從文件中讀取數據並進行計算。基本上我正在嘗試計算網絡流量的吞吐量。我是從讀取該文件的格式如下:Perl腳本提取部分數字
- 0.152416 1 2 tcp 1040 ------- 2 12.0 2.9 2 13
r 0.153584 1 2 tcp 1040 ------- 2 12.0 2.9 1 12
+ 0.154208 1 2 tcp 1040 ------- 2 10.0 2.7 3 15
- 0.154208 1 2 tcp 1040 ------- 2 11.0 2.8 3 15
r 0.155248 1 2 tcp 1040 ------- 2 12.0 2.9 2 13
我提取柱[0],[3],[7],[8],[9]。由於列[8]和[9]以double(即x.y)形式出現,因此我試圖僅獲得列[8]和[9]的第一部分(即x部分)。換句話說,我不關心在點「之後」出現的第二部分。 。我需要的第一部分。我想,我有兩種方法,無論是處理正則表達式,還是添加更多額外的代碼來爲[8]和[9]中的每一行我將讀取的標記定製標記?任何簡短的建議。部分腳本:
#input parameters:
$infile=$ARGV[0];
$dest=$ARGV[1];
$from=$ARGV[2];
$to=$ARGV[3];
$fId=$ARGV[4];
$TimeShift=$ARGV[5];
我想使$和$只包含第一部分。
open (DATA,"<$infile") || die "error in $infile $!";
while (<DATA>)
{
@x = split(' '); Im using space
謝謝。但是,這給了我所有節點的零結果,而如果我指定第二部分(不使用整數),則計算吞吐量。 – SimpleNEasy 2013-02-20 22:56:51
@ Eng.Mohd:沒有看到腳本,我不知道。 – choroba 2013-02-20 23:04:14
我解決了這個問題。謝謝 – SimpleNEasy 2013-02-20 23:06:21