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

如何提取文件中length后的首个数字并统计各唯一数值的出现次数

实现方案

直接用awk单遍扫描文件即可完成统计,2万多行的文件可以在毫秒级得到结果,命令如下:

awk 'match($0, /length: ([0-9]+)/, m) { cnt[m[1]]++ } END { for (n in cnt) printf "length %s: %d\n", n, cnt[n] }' file.txt

命令说明

  • 用match函数精准提取length:后紧随的首个数字,不受行内其他内容干扰
  • 通过关联数组cnt累计每个数字的出现次数
  • 遍历数组按要求的格式输出结果

如果需要输出按数字大小升序排列,追加排序管道即可:

awk 'match($0, /length: ([0-9]+)/, m) { cnt[m[1]]++ } END { for (n in cnt) printf "length %s: %d\n", n, cnt[n] }' file.txt | sort -k 2n

针对你给出的示例数据,运行后输出和你期望的格式完全一致。


内容的提问来源于stack exchange,提问作者nobody-at-all

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.15 05:24:08