You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Linux命令统计文档不同单词?uniq命令结果异常求助

问题:uniq统计重复单词计数不符合预期

数据集

Meredith Norris Thomas;Regular Air;HomeOffice
Kara Pace;Regular Air;HomeOffice
Ryan Foster;Regular Air;HomeOffice

执行命令

cat HomeOffice_sales.txt |tr " " "\n" | tr ";" "\n"| uniq -c

异常结果

1 Meredith
      1 Norris
      1 Thomas
      1 Regular
      1 Air
      1 HomeOffice
      1 Kara
      1 Pace
      1 Regular
      1 Air
      1 HomeOffice
      1 Ryan
      1 Foster
      1 Regular
      1 Air
      1 HomeOffice

问题原因

uniq的特性是只对连续重复的行进行计数合并,你的处理后相同单词(比如Regular、Air、HomeOffice)分散在不同行之间,没有连续出现,所以每个都会被单独计数为1。

解决办法

先通过sort命令把相同单词排序到一起,再用uniq -c统计:

cat HomeOffice_sales.txt | tr " ;" "\n" | sort | uniq -c

这里把两个tr命令合并,tr " ;" "\n"表示把空格和分号都替换成换行符,写法更简洁。

预期结果

3 Air
      3 HomeOffice
      1 Foster
      1 Kara
      1 Meredith
      1 Norris
      1 Pace
      3 Regular
      1 Ryan
      1 Thomas

内容的提问来源于stack exchange,提问作者Faisal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 19:15:38