linux 根据不同的行首字母分别求和
要根据不同的行首字母分别求和,可以使用awk命令来实现。假设我们有一个文本文件test.txt,内容如下:
A 1 B 2 A 3 C 4 B 5 A 6
我们可以使用以下命令来根据不同的行首字母求和:
awk '{sum[$1] += $2} END {for (i in sum) print i, sum[i]}' test.txt
输出结果将会是:
A 10 B 7 C 4
解释:
- awk命令中的大括号中的代码块会对每一行进行处理。
- sum[$1] += $2 表示对数组sum的索引为行首字母的元素进行累加。
- END {for (i in sum) print i, sum[i]} 表示在处理完所有行后,遍历数组sum,打印出所有的索引和对应的值。
原文地址: https://www.cveoy.top/t/topic/hSMi 著作权归作者所有。请勿转载和采集!