如何对 bash 中的一系列数字求和
How to sum a series of numbers in bash
我运行这个bash代码在Linux:
B=$(top -d 1 -b -n 9| grep $A | awk '{print }' | bc)
哪个 A 是进程 name.it 将设置为如下所示:
38.7 69.1 81.0 83.3 86.9 87.3 88.3 89.3 90.2
我想将这些数字加起来 bash.i 试过:
B=$B+$(top -d 1 -b -n 9| grep $A | awk '{print }' | bc)
但它不能正常工作。
我怎样才能得到这些数字的总和?
echo 38.7 69.1 81.0 83.3 86.9 87.3 88.3 89.3 90.2 |
tr ' ' \n | awk '{s+=[=10=]}END{print s}'
对于您的情况,您只需将管道中的 awk 替换为:
awk '{s+=}END{print s}'
我运行这个bash代码在Linux:
B=$(top -d 1 -b -n 9| grep $A | awk '{print }' | bc)
哪个 A 是进程 name.it 将设置为如下所示:
38.7 69.1 81.0 83.3 86.9 87.3 88.3 89.3 90.2
我想将这些数字加起来 bash.i 试过:
B=$B+$(top -d 1 -b -n 9| grep $A | awk '{print }' | bc)
但它不能正常工作。 我怎样才能得到这些数字的总和?
echo 38.7 69.1 81.0 83.3 86.9 87.3 88.3 89.3 90.2 |
tr ' ' \n | awk '{s+=[=10=]}END{print s}'
对于您的情况,您只需将管道中的 awk 替换为:
awk '{s+=}END{print s}'