简明Linux命令行笔记:uniq

显示唯一的行

uniq [options] [input-file] [output-file]

 

uniq用于显示它的输入,对于连续的重复行只保留一行。如果文件已排序,uniq就确保不会显示相同的两行

 

参数

如果没有指定input-file,那么uniq将从标准输入中读取数据。如果没有指定output-file,那么uniq将写入到标准输出中

 

选项

-c                  在行首显示该行在输入文件中出现的次数

-d                  显示重复出现的行的一个副本,不显示没有重复的行

-f                   比较时跳过前n列

-i                   比较行时忽略字符大小写

-s n               忽略每行的前n个字符

-u                  仅显示没有重复出现的行

-w n               对每行第n个字符以后的内容不做比较

 

示例

原文件

$ cat test 
boy took bat home
boy took bat home
girl took bat home
dog brought hat home
dog brought hat home
dog brought hat home

 

uniq

$ uniq test
boy took bat home
girl took bat home
dog brought hat home

仅显示连续重复的行一次

 

uniq -c

$ uniq -c test 
      2 boy took bat home
      1 girl took bat home
      3 dog brought hat home

显示文件中每行连续出现的次数

 

uniq -d

$ uniq -d test
boy took bat home
dog brought hat home

只显示重复出现的行

 

uniq -u

$ uniq -u test 
girl took bat home

只显示没有连续重复出现的行

 

uniq -f -s

$ uniq -f 2 -s 2 test 
boy took bat home

跳过指定的列和字符进行比较

 

posted @ 2013-01-09 18:53  Nerxious  阅读(467)  评论(0编辑  收藏  举报