Bash 脚本,使用浮点变量/字符串进行算术运算

Bash 脚本,使用浮点变量/字符串进行算术运算

我正在尝试创建一个承受平均负载的简单脚本百分比每分钟的 CPU 消耗。我使用包sar中的命令来执行此操作sysstat

这是我当前的代码:

#!/bin/bash
sar -u 1 10 | grep Average > /custom/tmp/idlefile
idleval=`awk '{print $8}' /custom/tmp/idlefile`
rm /custom/tmp/idlefile
rm -rf /custom/idlepercentage/*
touch /custom/idlepercentage/$idleval
exit 0

问题是,它现在唯一能做的就是输出空闲百分比。我希望它只输出负载百分比。

我尝试通过以下方式实现此目的:

loadval=100.00-`echo $idleval`

但它对我大喊大叫,不按我的要求做。

它似乎不会进行基本的算术运算,即从 100% - 空闲百分比得出负载百分比。

答案1

这应该有效:

loadval=$(sar -u 1 10 | awk '{print 100-$8}')

相关内容