天天看点

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 最后一列是连接状态

awk中NF的使用

S为数组,里面的元素就是连接状态

S={LISTEN,TIME_WAIT....}

S[LISTEN]默认为0,++S[LISTEN]用来记录出现LISTEN的个数

 虽千万人,吾往矣!