#!/bin/bash
# 业务知识
# 需要了解netstat命令运行的结果
# 问题提炼:本机3306端口 建立连接(ESTABLISHED) 各个状态的数目
# 思路:结果导向
# awk $5 ~ /3306/
# 汇总不同的IP 关联数组++时 等于1 total_ip++
# 汇总 $3 ~ /ESTABLISHED/
# 汇总 IP
awk '
{
if ($5 ~ /3306/)
print $5":"$6
}
' nowcoder.txt |
# 172.16.0.24:3306:ESTABLISHED
awk -F ":" '
BEGIN{
total_ip = 0
es = 0
total_link = 0
}
{
if (++arr[$1] == 1)
total_ip++
if ($3 ~ /ESTABLISHED/)
es++
}
END{
print "TOTAL_IP " total_ip
print "ESTABLISHED " es
for (i in arr)
total_link += arr[i]
print "TOTAL_LINK " total_link
}
'
END

京公网安备 11010502036488号