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

如何结合grep与wc实现唯一计数?sort -u应添加到命令的哪个位置?

命令使用问题解答

一、grep搭配wc实现唯一计数的方法

  • 核心逻辑是:先用grep完成你需要的内容筛选,再通过去重工具处理筛选结果,最后交给wc统计行数即可。由于grep本身不具备去重能力,需要搭配sort -u或先sort再uniq实现去重。
  • 示例场景:统计Nginx访问日志中请求了/api/login接口的独立IP数量:
    grep "/api/login" /var/log/nginx/access.log | awk '{print $1}' | sort -u | wc -l
    
    上面的命令中,grep先筛选出所有包含登录接口请求的日志行,awk提取出每行第一个字段(即请求IP),sort -u对IP去重后,wc统计最终的唯一IP数量。

二、现有cut命令的修改方案

你现有的命令是提取csv第一列后统计总行数,要实现去重计数,只需要把sort -u插入到cut命令和wc命令之间即可,提取后的第一列会先完成去重再统计行数。
修改后的最终命令如下:

cut -f1 test.csv | sort -u | wc -l

注意:如果你的test.csv是逗号分隔而非默认的制表符分隔,需要给cut加上指定分隔符的参数,修改为:

cut -d',' -f1 test.csv | sort -u | wc -l

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 00:36:04