使用 awk 执行算术运算

perform arithmetic operation using awk

我想在满足条件时执行两个算术运算中的一个:

我的文件包含:

 2,8,123,VT
 60,32,456,DU

当它是 VT 时,

 awk -F, '{ans = sprintf ("%.0f",( + ) / 10); print ans}'

当它的DU,

 awk -F, '{quo =  / 60); print qou}'

答案应添加到文件中。例如,经过上面的计算:

 2,8,123,VT,1
 60,32,456,DU,2

我可以为此使用 awk 吗?怎么样?

考虑这个 awk:

awk -F, -v OFS=, '$(NF-1)=="VT"{p = sprintf("%.0f",( + ) / 10)}
                  $(NF-1)=="DU"{p =  / 60} {print [=10=], p}' file
2,8,123,VT,1,1
60,32,456,DU,2,7.6