uniq

基本语法(Synopsis)

uniq [OPTION]... [INPUT [OUTPUT]]

[] 表示可选项,... 表示可重复;大写名称表示需要替换的参数。

基本功能与推荐用法

uniq 处理相邻的重复行。要统计全文件重复项,通常先排序。

sort names.txt | uniq
sort names.txt | uniq -c            # 计数
sort names.txt | uniq -d            # 只显示重复行
sort names.txt | uniq -u            # 只显示唯一行
sort -f names.txt | uniq -i         # 忽略大小写
uniq -f 1 data.txt                  # 忽略第一个字段
uniq -s 4 data.txt                  # 忽略前 4 个字符

推荐:

  • 未排序输入中,分散在不同位置的相同行不会合并。
  • sort -u 适合直接去重;sort | uniq -c 适合统计频率。
  • 需要保持原始顺序时使用 awk 的关联数组,而不是先 sort。

示例中的选项、参数与子命令

本表解释本页示例实际出现的选项、参数、子命令及必要的辅助命令语法。

语法元素含义
-c在每行前显示连续重复次数。
-d只输出重复组。
-u只输出没有重复的行。
-i比较时忽略大小写。
-f N比较时跳过前 N 个字段。
-s N比较时跳过前 N 个字符。
相邻重复uniq 只合并相邻重复行,通常先用 sort。

官方资料