uniq只可以将相邻行重复数据进行去重处理:


[root@localhost /data/mysql/mysql3306]#last | cut -d ' ' -f 1 | tail -15 > test

#将用户登录信息last的输出以空格分隔,截取首列(注意一行的文字内容之间可能有多个空格,所以用cut -k 1,5这样的参数得不到想要的(显示第一和第五列)结果),因为内容过多,仅取用末15行,放置到test中

[root@localhost /data/mysql/mysql3306]#cat test

root

root

root

root

root

root

(unknown

reboot

stone

stone

stone

(unknown

reboot


wtmp

[root@localhost /data/mysql/mysql3306]#uniq -c test

      6 root

      1 (unknown

      1 reboot

      3 stone

      1 (unknown

      1 reboot

      1 

      1 wtmp

#相同的两个reboot和(unknown都没有累计

[root@localhost /data/mysql/mysql3306]#sort test | uniq -c

      1 

      2 reboot

      6 root

      3 stone

      2 (unknown

      1 wtmp


加sort排序后才可以正确计数


uniq -i 忽略字符大小写