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

多文件<string>,<number>内容排序求和:后续处理命令咨询

解决方法:汇总相同字符串的数字总和

看来你已经完成了合并所有文件内容和排序的前置步骤,接下来只需要简单几步处理,就能实现按字符串汇总对应数字总和的需求啦:

完整命令链

cat * | sort | tr ' ' '\n' | awk -F ',' '{sum[$1] += $2} END {for (key in sum) print key "," sum[key]}'

分步解释

  • tr ' ' '\n':你的原始内容是用空格分隔每个<string>,<number>条目(比如a,5 b,2),这个命令会把所有空格替换成换行符,让每个条目单独占一行,方便后续工具处理。
  • awk -F ',' '{sum[$1] += $2}':以逗号作为字段分隔符,把每个条目的第一个字段(字符串部分)作为键,第二个字段(数字部分)累加进sum数组中,自动完成相同字符串的数字求和。
  • END {for (key in sum) print key "," sum[key]}:当awk处理完所有行后,遍历sum数组,严格按照<string>,<所有数字之和>的格式输出每一组结果。

可选优化:让输出按字符串排序

如果希望最终输出和你示例一样按字符串顺序排列,可以在命令末尾再加一个sort:

cat * | sort | tr ' ' '\n' | awk -F ',' '{sum[$1] += $2} END {for (key in sum) print key "," sum[key]}' | sort

要是你偏好把结果变回空格分隔的格式(和输入样式一致),可以在最后追加tr '\n' ' ',不过通常每行一个条目会更易读。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 06:55:22