Bash 检查作为字符串的浮点值是否大于其他浮点值

Bash 检查作为字符串的浮点值是否大于其他浮点值,bash,shell,centos,uptime,Bash,Shell,Centos,Uptime,我试图编写一个bash脚本,解析服务器上的负载,并根据预定义的数值检查该值。如果服务器上的负载值高于预定值,则报告错误。出于某种原因,我在这里的if语句有问题,其中BAIL变量作为LOAD变量的值返回 #!/bin/bash set -a load=$(uptime | grep -ohe 'load average[s:][: ].*' | awk -F ',' '{ print $2 }' | bc -l) maxload=$(1.00 | bc -l) bail=$(echo "$loa

我试图编写一个bash脚本,解析服务器上的负载,并根据预定义的数值检查该值。如果服务器上的负载值高于预定值,则报告错误。出于某种原因,我在这里的if语句有问题,其中BAIL变量作为LOAD变量的值返回

#!/bin/bash
set -a

load=$(uptime | grep -ohe 'load average[s:][: ].*' | awk -F ',' '{ print $2 }' | bc -l)
maxload=$(1.00 | bc -l)
bail=$(echo "$load -gt $maxload" | bc )


if  [[ $bail ]]
then
  echo "LOAD TOO HIGH ON SERVER"
  echo "$load"
  echo "$bail"
  exit 255 
else
  echo "ACCEPTABLE LOAD ON SERVER"
  echo  "$load"
  echo "$bail"
fi

当我计算要在if语句中使用的BAIL变量时,我做错了什么?我正在尝试返回1或0。

对于
bc
1.07.1版,比较的语法是

bail=$(echo "$load > $maxload" | bc )
此外,缺少一个
回音

maxload=$(echo "1.00" | bc -l)