gpt4 book ai didi

linux - Bash:为什么我的 If 语句总是评估为真?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:57:13 24 4
gpt4 key购买 nike

我正在尝试编写在大多数语言中看起来很简单的 if 语句,但是在 bash 中这似乎根本不起作用。

当我运行脚本时,它总是进入第一个 if 语句。谁能帮助我解决我做错了什么?

PERC=.5
if [ "$PERC" > "1.00" ]
then
echo "Entered first statement"
else
if [ "$PERC" < "1.00" ]
then
echo "Entered second statement"
fi
fi

感谢您的帮助。

最佳答案

><比较字符串,而不是数字(并且必须在单个 [...] 中用反斜杠或引号引起来)。使用 -gt , -lt等比较数字,或使用算术条件:

if (( a < b || b <= c )) ; then

但是请注意,bash 仅处理整数运算。要比较 float ,您可以使用 bc :

if [[ 1 == $( bc <<< '1.5 < 1.00' ) ]] ; then

关于linux - Bash:为什么我的 If 语句总是评估为真?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32521381/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com