netstatデータを端末からcsvファイルにエクスポートする

netstatデータを端末からcsvファイルにエクスポートする

少し問題があります。 60秒ごとに次のコマンドを実行するスクリプトを作成したいと思います。

netstat - tn

これにより、次のような出力が提供されます。

root@guest:~# netstat -tn
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0    111 111.111.141.36:22         111.11.11.223:54327      ESTABLISHED

外部アドレスの保存にのみ興味があります。どうすればいいですか?

私は次のコマンドを試しました

root@guest:~# watch -n 300 netstat -tn > results_mon_27.txt

すべてのデータをテキストファイルに書き込むと、次のように書式設定の問題が発生するため、外国アドレスのみを収集することをお勧めします。

^[[?1049h^[[1;40r^[(B^[[m^[[4l^[[?7h^[[H^[[2JEvery 300.0s: netstat -tn^[[1;138Hguest: Mon Aug 21 16:45:31 2017^[[3;1HActive Internet connections (w/o servers)
^[[4dProto Recv-Q Send-Q Local Address^[[4;45HForeign Address^[[4;69HState
^[[5dtcp^[[5;12H0^[[19G0 45.76.141.36:38708^[[45G192.42.115.102:9004     TIME_WAIT
^[[6dtcp^[[6;12H0     40 45.76.141.36:22^[[6;45H193.36.8.223:54327^[[69GESTABLISHED^[[40;168H^[[1;159H50^[[5;34H22   ^[[5;47H3.36.8.223:54327      ESTABLISHED^[[6;18H6$
^[[5d^[[M^[[1;160H5
^[[6dtcp^[[6;12H0^[[19G0 45.76.141.36:22^[[6;45H58.242.83.32:25719^[[69GESTABLISHED^[[40;168H
^[[6d^[[J^[[1;159H10^[[40;168H
^[[5d^[[L^[[1;160H5
^[[5dtcp^[[5;12H0^[[19G0 45.76.141.36:22^[[5;45H196.200.176.80:37384    ESTABLISHED
^[[7dtcp^[[7;12H0^[[19G0 45.76.141.36:22^[[7;45H58.242.83.32:61038^[[69GESTABLISHED^[[40;168H
^[[5d^[[M^[[1;159H20^[[6;58H49490^[[40;168H^[[1;160H5^[[6;34H38722^[[45G192.42.115.102:9004
^[[7dtcp^[[7;12H0     68 45.76.141.36:22^[[7;45H58.242.83.32:42510^[[69GESTABLISHED^[[40;168H^[[1;159H30^[[7;18H 0^[[7;58H38678^[[40;168H
^[[7d^[[J^[[1;160H5^[[5;45H58.242.83.32:15804^[[6;34H22   ^[[6;47H3.36.8.223:54327 ^[[40;168H
^[[5d^[[M^[[1;159H40
^[[6dtcp^[[6;12H0^[[19G0 45.76.141.36:22^[[6;45H58.242.83.32:14118^[[69GESTABLISHED^[[40;168H^[[1;160H5^[[6;60H003

ベストアンサー1

外部アドレスは5番目の列なので、各列のデータを簡単に収集/操作できるnetstat出力を試してください。awk

netstat -tn|awk '{print $5}' 

出力には外部アドレスである5番目の列のみが提供されます。

#!/bin/bash

while true
do
    netstat -tn|awk '{print $5}' >> output.netstat
    sleep 60
done

おすすめ記事