【发布时间】:2014-12-15 04:07:27
【问题描述】:
我没有使用 awk 和 cut 的经验,请帮助我解决我的问题 我有命令从每个 IP 地址计算到我的服务器端口 80 的总连接数
netstat -na|grep ":80" |awk '{print $5}'|cut -d : -f1|sort | uniq -c | sort -nr
4 173.252.80.117
4 173.252.80.116
4 173.252.80.113
2 173.252.80.119
2 173.252.80.118
2 173.252.80.115
1 66.249.64.170
1 173.252.80.114
1 173.252.80.112
我有命令列出我的服务器端口 80 与每个 IP 地址之间的连接状态
netstat -nat | grep ":80" | grep -v LISTEN | awk '{print $5 "\t" $6}' | sort | uniq -c
1 192.168.14.91:54008 TIME_WAIT
1 192.168.14.91:54009 TIME_WAIT
1 192.168.14.91:54010 TIME_WAIT
1 192.168.14.91:54011 TIME_WAIT
1 192.168.14.91:54012 TIME_WAIT
1 192.168.14.91:54013 TIME_WAIT
1 192.168.15.82:54071 ESTABLISHED
1 192.168.15.82:54072 ESTABLISHED
1 192.168.15.82:54073 ESTABLISHED
1 192.168.15.82:54074 ESTABLISHED
1 192.168.15.82:54075 ESTABLISHED
1 192.168.15.82:54076 ESTABLISHED
如何更改我的命令以使输出如下:
3 192.168.14.91 已建立 2 192.168.14.91 FIN_WAIT2 6 192.168.14.91 TIME_WAIT 6 192.168.15.82 已建立 2 192.168.15.82 SYN_RECEIVED 6 192.168.15.82 TIME_WAIT
【问题讨论】:
-
如果您使用 awk,则永远不需要 sed、grep 或 cut,因为 awk 可以做他们可以做的事情。