Linux基础命令---uniq

时间:2021-07-26 12:21:06

uniq

      将文件中重复出现的行删除,结果送到标准输出或者指定文件。在使用uniq指令之前,必须使用sort对内容进行排序,否则没有效果。如果没有选项,则将匹配的行合并到第一个匹配项。

     此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

 

1、语法

     uniq [选项]  [input] [output]

 

2、选项列表

选项

说明

--version

显示命令版本信息

--help

显示帮助文档

-c | --count

显示行重复出现的次数

-d | --repeated

仅显示重复出现的行

-D|--all-repeated[=delimit-method]

打印所有重复行

-f | --skip-fields=N

忽略前n个字段

-i | --ignore-case

比较时忽略大小写

-s | --skip-chars=N

忽略前n个字符

-u | --unique

只显示不重复的行

-z | --zero-terminated

以0字节为结束符,而不是换行

-w | --check-chars=N

比较不超过指定次数

 

3、实例

     1)删除重复行 

[root@192 weijie]# cat 3.c                     //查看内容

nihao linux.

i am david. 

nihao linux.

i am david. 

[root@192 weijie]# sort 3.c | uniq –c       //先排序,然后再删除重复行,显示重复行出现的次数

      2 i am david. 

      2 nihao linux.

     2)只显示不重复的行

[root@localhost weijie]# cat 3.c            //查看内容

nihao linux.

i am david. 

nihao linux.

i am david. 

i love linux

[root@localhost weijie]# sort 3.c | uniq -c –u     //只显示不重复的行

      1 i love linux