一段统计服务与监听端口的bash shell脚本代码

#!/bin/bash
netstat -ltunp |
	awk '/^(tcp|udp)/{
if(NF==6){
$5=$5" LISTEN"
}
print $0
}' |
	awk '{
gsub(".*:","",$4)
gsub(".*/","",$7)
gsub("6","",$1)
print $1"/"$4,$7
}' |
	sed 's/://g' | sort -k2,2 | sort -u | sort -k2,2 |
	awk '{
if(a==$2){
printf" %s",$1
}
else{
printf"\n%s %s ",$2,$1
a=$2
}
printf"\n"
}'

运行结果样例:

Categories: 系统运维