9

netstat 出力には次のようなものが含まれています...

tcp        0      0 0.0.0.0:80       221.126.149.99:51973    ESTABLISHED 23879/apache2
tcp        0      0 0.0.0.0:80        66.249.68.154:40883     ESTABLISHED 23899/apache2
tcp        0      0 0.0.0.0:80       66.249.68.81:41200      ESTABLISHED 23892/apache2
tcp        0      0 0.0.0.0:80       66.249.67.121:59355     ESTABLISHED 23905/apache2
tcp        0   4465 0.0.0.0:80       110.75.175.27:48139     ESTABLISHED 23901/apache2

私はこのコマンドを使用します

netstat -anpt|grep apache2 |grep ESTABLISHED | awk -F "[ :]" '{print $4}'

IP を取得できませんでした。何かヒントはありますか?

4

5 に答える 5

14

これにより、接続している一意の IP アドレスのリストも返されます。

netstat -anpt | grep apache2 |grep ESTABLISHED | awk '{ print $5 }' | cut -d: -f1 | sort -u

うーん、メガネも変える必要があると思う = P

于 2010-09-13T13:57:08.400 に答える
3

あなたは試すことができます

netstat -anpt|awk 'BEGIN {FS="[ :]+"};/ESTABLISHED/ && /apache/{print $6}'  

どういうわけかは 6 フィールドを数えていますが、他の人は 4 フィールドを数えています... 新しいメガネを購入する必要がありますか? :)

チッ!

于 2010-09-12T05:33:02.117 に答える
2
netstat -anpt | awk '/apache2/&&/ESTABLISHED/{sub(/:*/,"",$4);print $4} ' 
于 2010-09-12T06:24:39.893 に答える
2

あなたは本当に近くにいます。フィールド区切り記号として単一の空白またはコロンを考慮しないように、フィールド区切り記号の正規表現を変更する必要があります。

netstat -anpt|grep apache2 |grep ESTABLISHED | awk -F "[ :]*" '{print $4}'
于 2010-09-12T05:27:31.017 に答える
-1
 netstat -ant | grep 80 | wc -l
于 2012-09-05T06:26:18.220 に答える