Bash 中的简单 int 条件没有意义


x=23;
y=223;
if [[ $x < $y ]]
then
    echo "TRUE"
else
    echo "FALSE"
fi

所以这个总是打印FALSE,即使23明显小于223。我是新来的,所以我可能错过了一些明显的东西。我试着把x和y代入它们的实际值这就没问题了。请发送帮助

<对字符串按字典顺序排序。要获得数字排序,请使用-lt

x=23;
y=223;
if [[ $x -lt $y ]]
then
    echo "TRUE"
else
    echo "FALSE"
fi

或者您可以使用算术表达式来代替条件表达式:

if (( $x < $y ))

最新更新