-1
ログファイルに次のエントリがあります。テキストファイル(PERL)のログ入出力の分割文字列
[2016-04-17 10:12:27:682011 GMT] tcp 115.239.248.245:1751 -> 192.168.0.17:8080 52976f9f34d5c286ecf70cac6fba4506 04159c6111bca4f83d7d606a617acc5d6a58328d3a631adf3795f66a5d6265f4d1ec99977a5ae8cb2f3133c9503e5086a5f2ac92be196bb0c9a9f653f9669495 (312 bytes)
私は機械学習のための.csvファイルにこれらの作品のいくつかを書くために粉々にこの1行の文字列を分割するスクリプトを書きたいです。今まで私はこのスクリプトを入手して特定のパターンを見つけ、発見されたものを見つけたらハードコードされた検索を書いています。これは私が望むものではありません。これは私が今持っているスクリプトです。
#!/usr/bin/perl -w
$path1 = "/home/tsec/testwatch/attackerresult.log";
$attacker = ">>/home/tsec/testwatch/attacker.csv";
#$path2 =
#$path3 =
#$path4 =
#function definition #Pattern for attackerlog only
sub extractor(){
open(LOG, $path1) or die "Cant't open '$path1': $!";
open(FILE, $attacker) or die "Can't open '$attacker': $!";
$target = "tcp";
while(<LOG>){
if(/$target/){
print FILE $target . "\n";
}
}
}
close(LOG);
close(FILE);
私はCSVファイルで出力はこのような何かになりたい:私は手動で
(タイトル)プロトコル、送信元IPアドレス、送信元ポート、ファイルサイズのcsvのタイトルを行うことができます
(文字列結果スクリプトから)、TCP、127.0.0.1、8080、上記312
ほんの一例です。
必要な出力はあなたが – Borodin
を表示入力とは無関係のように見える[PerlMonksでX-掲載](http://perlmonks.org/?node_id=1160718 ) – stevieb