使用 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
我想在满足条件时执行两个算术运算中的一个:
我的文件包含:
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