Perlについての質問箱 29箱目
■ このスレッドは過去ログ倉庫に格納されています
0874質問
2007/03/10(土) 13:11:58Received Packets Delivered = 6558
Output Requests = 5420
を%dataにキーをReceived Packets Delivered、値を6558、
キーをOutput Requests、値を5420として格納したいのですが、下記のプログラムでは
どうしてもoutput requestsのほうだけが%dataに格納されてReceived〜のほうが
格納されません。どうしてでしょうか?
foreachを2回行えばいいとは思うのですが、もし読み込む行数が何万行になると
かなり負荷になるのでできればforeachを1回でうまく取り込める方法が知りたいのですが・・
#!C:\Perl\bin\
@naiyou=`netstat -s`;
foreach (@naiyou){
last if($_=~/Routing Discards/);
chomp;
if($_=~/(Received Packets Delivered)(\s+)=(\s)(\d+)/){
%data=("Received Packets Delivered"=>$4)
}
if($_=~/(Output Requests)(\s+)=(\s)(\d+)/){
%data=("Output Requests"=>$4)
}
}
@key=keys %data;
print"@key\n";
@val=values %data;
print"@val\n";
■ このスレッドは過去ログ倉庫に格納されています