天天看点

awk查看tcp连接数

查看系统tcp各种状态的连接数以前总是1个状态1个状态的wc统计,真是没什么效率哦。很多人都在用一个挺强的脚本命令咱也学了下

netstat -n|awk '/^tcp/{++s[$NF]} END{for (i in s){print i,s[i]}}'

TIME_WAIT 427

FIN_WAIT1 2435

FIN_WAIT2 289

ESTABLISHED 14582

SYN_RECV 464

CLOSING 14

LAST_ACK 690

# $NF tcp链接的状态

# ++s[$NF]每种链接状态的总数放入数组,$NF代表EST,TIME_WAIT等,这个是字符串下

# 标,有趣的是EST的++完后开始另一个状态的++

# END,awk统计完后输出数组的每个元素的值

netstat -n|awk '/^tcp/{++s[$NF]} END{for (i in s){print i,s[i]}}'|sort -n -k 2

# 加个排序,于是完美了