我正在尝试比较 bash 脚本中的整数和浮点数。我尝试了以下方法:
if [ $? -eq 4.189 ];
这不起作用,因为它希望 4.189 是一个整数,并且
if [ $? = 4.186 ];
因为我认为这可能会奏效。我也试过公元前。关于如何做到这一点的任何提示?在这里抨击新手。非常感谢。
注意:$? 是计算球体体积的可执行文件的输出。
这将起作用
#!/bin/bash
volume=4.189
if [[ $(echo "$volume == 4.189" | bc) -eq "1" ]]; then
echo Equal
else
echo Not Equal
fi
或者简单地将文字放在引号中
#!/bin/bash
volume=4.189
if [[ $volume == "4.189" ]]; then
echo Equal
else
echo Not Equal
fi
请注意,在我展示的两种比较浮点的方法中,首选是使用 bc,它会告诉您 4.1890 等于 4.189,而第二种方法是哑字符串比较,它们将比较不相等。