+ -
当前位置:首页 → 问答吧 → 关于uniq的问题求助

关于uniq的问题求助

时间:2011-05-16

来源:互联网

114.112.161.32
114.112.161.32
114.112.161.32
114.112.161.32
114.112.161.32
114.112.161.32
114.112.161.32
114.112.161.32
114.112.161.32
114.112.161.32
183.60.140.91
114.112.161.32
114.112.161.32
221.204.241.19
114.112.161.32
221.204.241.19
114.112.161.32
114.112.161.32
218.60.14.77
............

这是apache access_log 里awk '{print $1}'  出来的结果。
然后我想统计重复的IP个数。

我使用了uniq -cd ip.txt  但是出现的结果是
      6 114.112.161.32
      2 60.191.252.246
      4 114.112.161.32
      2 114.112.161.32
      2 114.112.161.32
      5 114.112.161.32
      2 114.112.161.32
      2 114.112.161.32
      3 114.112.161.32
      2 114.112.161.32
      2 221.178.210.41
      3 114.112.161.32
      2 221.204.241.19
      3 119.167.247.43
      2 114.112.161.32
      2 114.112.161.32
     12 114.112.161.32

请问这个是为什么? 为什么相同的IP 没有去重 ?

感谢各位。

作者: xiaoqi8866   发布时间: 2011-05-16

sort ip.txt|uniq -c
  1. UNIQ(1)                         User Commands                         UNIQ(1)

  2. NAME
  3.        uniq - remove duplicate lines from a sorted file
复制代码

作者: waker   发布时间: 2011-05-16

非常感谢!

waker

作者: xiaoqi8866   发布时间: 2011-05-16

老大说得对,以后统计前最好先排序养好习惯。

作者: zooyo   发布时间: 2011-05-16

回复 xiaoqi8866


    awk '{a[$0]++;}END{for(i in a)print i,a}'
这个简单!

作者: db2-zhang   发布时间: 2011-05-16