由统计ip出现次数展开的...

新来个intern,跟着某同事做devops,看其对于shell有点疑惑,于是列举了个简单的应用给他,统计IP出现次数 。

TCP    192.168.0.97:1052      60.28.216.15:80        CLOSE_WAIT
TCP    192.168.0.97:1436      219.133.60.243:8000    CLOSE_WAIT
TCP    192.168.0.97:1624      72.14.235.101:443      CLOSE_WAIT
TCP    192.168.0.97:1773      192.168.0.2:8000       ESTABLISHED
TCP    192.168.0.97:2181      207.46.110.37:1863     ESTABLISHED
TCP    192.168.0.97:2187      64.4.37.41:1863        ESTABLISHED
TCP    192.168.0.97:2188      207.46.27.162:1863     ESTABLISHED
TCP    192.168.0.97:2406      219.133.49.80:443      CLOSE_WAIT
TCP    192.168.0.97:4127      192.168.0.165:2120     ESTABLISHED
TCP    192.168.0.97:4142      192.168.0.165:2138     ESTABLISHED
TCP    192.168.0.97:4147      219.133.63.142:443     CLOSE_WAIT

统计第三列中ip出现的次数,并排序取前五个ip

shell可以这么搞:

cat ip.txt |tr -s ' '| cut -d ' ' -f 3|cut -d : -f 1 | sort |uniq -c | head -n 5

带awk可以这么搞:

awk '{print $3}' ip.txt |cut -d : -f 1 | sort |uniq -c | head -n 5

要是没有端口号的话,直接用awk也能完成统计:

awk '{a[$4]++}END{for(i in a){if(a[i]>0){print a[i],i}}}' ip.txt |sort -nr | head -n 5








转载于:https://my.oschina.net/u/921876/blog/420561

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值