虽然没有第 16 行,但仍然给出错误“第 16 行:语法错误:意外的行结束”

问题描述 投票:0回答:1
a=10
b=20
c=30

if [[ $a -gt $b && $a -gt $c ]]
then
echo "A is the greater number"
if [[ $b -gt $a && $b -gt $c ]]
then
echo "B is the greater number"
else
echo "C is the greate number"
fi

我尝试进行 dos2unix 格式化,添加另一个“fi”,但代码仍然抛出相同的错误

bash shell ubuntu scripting syntax-error
1个回答
0
投票

您有两个

if
语句,但只有一个
fi
。尝试使用
elif
来代替第二种情况:

a=10
b=20
c=30

if [[ $a -gt $b && $a -gt $c ]]; then
    echo "A is the greater number"
elif [[ $b -gt $a && $b -gt $c ]]; then
    echo "B is the greater number"
else
    echo "C is the greater number"
fi
© www.soinside.com 2019 - 2024. All rights reserved.