Linux uniq命令

uniq命令

文件经过处理后在它的输出文件中可能会出现重复的行。例如:使用cat命令将两个文件合并后,再使用sort命令排序,就可能会出现重复的行。这时可以使用uniq命令将这些重复行从输出文件中删除,只留下每条记录的唯一样本和出现次数。需要注意以下两点:
  1. 对文本操作时,它一般会和sort命令进行组合使用,因为uniq不会检查重复的行,除非它们是相邻的行
  2. 对文本操作时,若域中为先空字符(通常包括空格以及制表符),然后非空字符,域中字符前的空字符将被跳过

参数

用法 uniq  [选项]   [文件]
  • -c 显示输出中,在每行行首加上本行在文件中出现的次数
  • -d 只显示重复行
  • -u 只显示文件中不重复的各行

示例

测试文件
排序去重,并且获取重复行的次数
开始例子证明了,数据去重前,最好先用sort进行排序
阿里面试题目:100M文件里,获取重复次数最多的10个数

标签