首页/系统/Linux 运维命令速查/uniq 去除相邻重复行
本包目录(613 条)
文件与目录76 条
文本处理77 条
网络命令82 条进程与作业69 条磁盘与文件系统51 条用户与权限44 条日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条定时任务与计划50 条

uniq 去除相邻重复行

去重工具:只处理相邻重复行,所以先 sort;-c 计数、-d 只显示重复、-u 只显唯一。

Linux 运维命令速查系统更新于 2026-10-12
用途相邻行去重/计数
语法uniq [选项] [输入]
前提输入需先排序(或本身相邻重复)

常用示例

常用示例
sort ips.txt | uniq -c            # 计数排名(经典组合)
sort names.txt | uniq -d          # 只列重复出现的
sort names.txt | uniq -u          # 只列唯一出现的
uniq -c <(sort app.log) | sort -rn | head
「统计 TOP N」万能公式:sort | uniq -c | sort -rn | head。

易错点

  • 忘记先 sort:不相邻的重复行不会被合并——这是 uniq 使用错误的第一名
  • uniq -c 输出前导空格,脚本再次解析时用 awk 处理或 sed 去空格

数据来源与参考

  • man 1 uniq(GNU coreutils 手册)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌