我有一个|具有多个字段的分隔文件(Field_1 to Field_10)
,其中一些字段具有美元金额。
我想获得 say 的累积和Field_1 ($ amount), Field_5 ($ amount), Field_6 ($ amount)
,并产生等于 的输出SUM(Field_1)+SUM(Field_5)+SUM(Field_6)
。
答案1
给定一个示例输入文件:
$1.50|field 2|field 3|field 4|$3.50|$42|field 7|field 8|field 9|field 10
$2.30|field 2|field 3|field 4|$4.50|$4200|field 7|field 8|field 9|field 10
然后这个 awk 程序将对字段 1、5 和 6 求和,然后在最后打印总数:
awk -F '|' '{sum += substr($1, 2) + substr($5, 2) + substr($6, 2)} END { printf "$%.2f\n", sum }' input