使用Shell脚本按分组计算folder1文件中的数值总和
Shell脚本实现分组求和
针对folder1文件中按冒号分隔的分组数据,要实现按分组对数值求和并输出指定格式,用awk就能轻松完成,这是最简洁高效的方案:
实现命令
awk -F ':' '{sum[$1] += $2} END {for (key in sum) print key " = " sum[key]}' folder1
命令说明
-F ':':指定文本的分隔符为冒号,将每行内容拆分为分组名(第一列$1)和数值(第二列$2){sum[$1] += $2}:定义关联数组sum,以分组名为键,遍历到对应分组时,将数值累加到数组对应位置END {for (key in sum) print key " = " sum[key]}:处理完所有行后,遍历数组,按分组名 = 求和结果的格式输出每个分组的最终总和
测试验证
假设folder1文件内容如下:
A:10 A:12 A:15 B:10 B:10
运行上述命令后,输出结果与期望完全一致:
A = 37 B = 20
内容的提问来源于stack exchange,提问作者Sanjay malhotra
相关产品推荐
相关产品推荐

