ファイルから読み取り、計算を行う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(iexy)であるため、列[8]と[9]の最初の部分(つまりx部分)のみを取得しようとしました。つまり、ドット「。」の後に続く2番目の部分は気にしません。。最初の部分が必要です。正規表現を処理する方法と、[8]と[9]のトークンをカスタマイズするためのコードを追加して、読み取る行ごとに2つの方法があると思います。短い提案。スクリプトの一部:
#input parameters:
$infile=$ARGV[0];
$dest=$ARGV[1];
$from=$ARGV[2];
$to=$ARGV[3];
$fId=$ARGV[4];
$TimeShift=$ARGV[5];
$ fromを作成したいのですが、$toには最初の部分だけが含まれています。
open (DATA,"<$infile") || die "error in $infile $!";
while (<DATA>)
{
@x = split(' '); Im using space