我有一个运行iperf的bash脚本并输出平均bandwdith,即3.80 Mbits / sec。我想做的是将此输出作为连接速度的平均值。
因此,如果我有一个10Mbit的连接,我想知道3.80 Mbits / sec是什么,所以输出类似
3.80 Mbits/sec 38%
我不知道该怎么做。
我的脚本
iperf -c 1.1.1.1 >> /tmp/iperf.log
echo -e " \t $(awk '/Bandwidth/ {getline}; END{print $7, $8}' $iperflog"
返回
3.80 Mbits/sec
我希望它返回
3.80 Mbits/sec 38%
答案 0 :(得分:3)
这是awk
的示例:
user@host:~# echo "3.80 Mbits/sec" | awk '{printf "%s %s%%\n", $0, $1/(10.0/100)}'
3.80 Mbits/sec 38%
要应用于您的脚本,只需在命令后添加awk
部分:
echo -e " \t $(awk '/Bandwidth/ {getline}; END{print $7, $8}' /tmp/iperf.log" | awk '{printf "%s %s%%\n", $0, $1/(10.0/100)}'