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

uniq -c 频次统计与 TOP 排名

把重复值变成「计数 + 值」并排序取前几:统计 IP、状态码、URL、错误类型的标准流水线。

Linux 运维命令速查系统更新于 2026-10-12
用途频次统计与排名
流水线cut/awk 提取 → sort → uniq -c → sort -rn → head
变体sort -rn 数值降序

常用示例

常用示例
awk '{print $1}' access.log | sort | uniq -c | sort -rn | head -20
cut -d' ' -f9 access.log | sort | uniq -c | sort -rn
grep -o 'ERROR [a-z_]*' app.log | sort | uniq -c | sort -rn | head
uniq -c 的计数在前、值在后;sort -rn 让最大计数排最前,head 截 TOP N。

易错点

  • COUNT 列是第 1 列:后续再 awk '{print $1}' 拿到的是数字不是原值,别取错列
  • 大体量日志 sort 全量排序较重;可先用 awk 预聚合再排序更快

数据来源与参考

  • man 1 uniq(GNU coreutils 手册)
  • man 1 sort(GNU coreutils 手册)

相关工具

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