利用 awk 将当前的链接按端口汇总倒排序

写了一行命令,利用 awk 将当前的链接按端口汇总倒排序  :)

netstat -ano | awk /tcp.*:1[15].*:[1-5]/'{print $4}' | awk -F ':' '{print $1,$2}' | sort -k2 | awk '{if(aa!=$2){aa=$2;count=0;};count++;dict[aa]=count} END{for(key in dict)print key,dict[key]}' | sort -k2 -r

netstat -antp | awk /tcp.*:1[15].*:[1-9]/'{split($4,ip1,":");split($5,ip2,":");if(ip1[3]=="ffff")print "TCPv6",ip1[4],ip1[5],ip2[4];else print "TCP",ip1[1],ip1[2],ip2[1] }' | sort -k3,4 -n | awk 'BEGIN{count=0} {if(aa!=$3){aa=$3;c1=0;c2=0;bb=""};if(bb!=$4){bb=$4;c1++};c2++;dic[aa]=c1" "c2;count++} END {for(key in dic)print key,dic[key];print "All connection count is:",count}' | sort -k3 -n -r

查看所有连接 传给awk, 

搜索匹配 tcp开头任意,冒号后1【1或者5】小数点,任意,冒号,1到9任意的串,   然后用冒号分割awk 默认空格分割的第四列用冒号分割到 ip1 变量, 第五列用冒号分割到ip2;如果ip1的第三列是‘ffff’,则输出TCP6,ip1的第四元素,ip1的第五元素,ip2的第四元素。 否则输出 TCP,ip1的第一元素,ip1的第二元素,ip2的第一元素

对以上进行排序, 按第三列(端口)。。。。。。。。 

原文地址:https://www.cnblogs.com/zhenfei/p/6394095.html