对列中除标题外的值求和

Ram*_*Ram 10 ksh text-processing columns

我有一个如下所示的文件

--------------------------------------------------------------
Name_Customer   Item_Purchased  Item_Amount Credit
--------------------------------------------------------------
Tom              H1_P            7657        N/A    
Pras             Track_1         23          N/A
Cha              Brace           9           N/A
Moh              kite37          269         N/A
Prab             Bols            87699       N/A
Run Code Online (Sandbox Code Playgroud)

我需要Item_Amount通过忽略文件中的标题来添加列下的值并将总和打印为

Total Amount collected = 95657
Run Code Online (Sandbox Code Playgroud)

cof*_*Mug 16

awk '{s+=$3}END{print s}' yourfile
Run Code Online (Sandbox Code Playgroud)


slm*_*slm 6

仅使用awk. 假设示例数据在一个文件中,ex.txt

$ awk '{total = total + int($3)}END{print "Total Amount collected = "total}' ex.txt
Run Code Online (Sandbox Code Playgroud)

例子

$ awk '{total = total + $3}END{print "Total Amount collected = "total}' ex.txt 
Total Amount collected = 95657
Run Code Online (Sandbox Code Playgroud)

细节

使用awk我们从第 3 列 ( $3)收集值并将它们的小计累加到变量 中total。完成后,作为最后一件事END{..},我们将消息与变量的值一起打印出来total