awk中NF的使用

统计机器中网络连接各个状态个数
netstat -a | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
 
一下子不明白$NF是什么意思,去查了下awk的用法,发现NF表示浏览记录的域的个数
awk ‘{print $1}’打印第一列
awk ‘{print $2}’打印第二列
NF表的是列数
如:
a b c d e
那么NF=5
$NF就是表示第五列的值,就是一行数据最后一列的那个值
$NF就是一行数据最后一列的那个值
 
netstat -a 最后一列是连接状态

 

 
 
S为数组,里面的元素就是连接状态
S={LISTEN,TIME_WAIT....}
S[LISTEN]默认为0,++S[LISTEN]用来记录出现LISTEN的个数
 
posted @ 2018-01-04 00:20  whendream  阅读(17573)  评论(0编辑  收藏  举报