Linux常用基本命令:uniq-去重复

uniq命令

作用:输出或者忽略文件中的重复行

格式: uniq [option] [file|stdin]

ghostwu@dev:~/linux/uniq$ cat ghostwu.txt 
192.168.1.2
192.168.1.8
192.168.1.3
192.168.1.3
192.168.1.9
192.168.1.8
192.168.1.8
192.168.1.0
192.168.1.3
ghostwu@dev:~/linux/uniq$ uniq ghostwu.txt 
192.168.1.2
192.168.1.8
192.168.1.3
192.168.1.9
192.168.1.8
192.168.1.0
192.168.1.3

去掉了连续的重复行.如果只想保留文件中的唯一,可以用选项-u

ghostwu@dev:~/linux/uniq$ uniq -u ghostwu.txt 
192.168.1.2
192.168.1.8
192.168.1.9
192.168.1.0
192.168.1.3

-c:去重复,并计算每行出现的次数

ghostwu@dev:~/linux/uniq$ uniq -c ghostwu.txt 
      1 192.168.1.2
      1 192.168.1.8
      2 192.168.1.3
      1 192.168.1.9
      2 192.168.1.8
      1 192.168.1.0
      1 192.168.1.3
ghostwu@dev:~/linux/uniq$ cat -n ghostwu.txt 
     1    192.168.1.2
     2    192.168.1.8
     3    192.168.1.3
     4    192.168.1.3
     5    192.168.1.9
     6    192.168.1.8
     7    192.168.1.8
     8    192.168.1.0
     9    192.168.1.3

可以用sort命令排序后,再去重复,得到的结果 也是唯一的

ghostwu@dev:~/linux/uniq$ sort -n ghostwu.txt | uniq -c
      1 192.168.1.0
      1 192.168.1.2
      3 192.168.1.3
      3 192.168.1.8
      1 192.168.1.9

-d: 只显示重复的行

ghostwu@dev:~/linux/uniq$ uniq -d ghostwu.txt 
192.168.1.3
192.168.1.8

 

posted @ 2018-05-20 21:33  ghostwu  阅读(33490)  评论(0编辑  收藏  举报
Copyright ©2017 ghostwu