在 Shell 中,if 语句、elif 语句 和 else 语句 可以进行任意的嵌套。
if condition
then
if condition1
then
# do something1
elif condition2
then
# do something2
else
if condition3
then
# do something3
elif condition4
then
# do something4
else
# do something5
fi
Shell 语言 的 if 语句、elif 语句 和 else 语句可以进行任意的嵌套。
if 语句里面可以嵌套任意的 if、elif 以及 else
#!/bin/bash
a=10
if (( $a>5 ))
then
if (( $a>20 ))
then
echo "a > 20"
elif (( $a>10 ))
then
echo "a > 10"
else
echo "a > 5"
fi
else
echo "a <= 5"
fi
echo "Over"
程序运行后,控制台输出如下:
首先,我们定义了一个 变量 a,并赋值为 5。接着,我们使用 if 语句判断 a > 5 的条件,如果条件满足,则继续执行判断 a > 20,如果不满足则继续执行 a > 10 的判断,如果最后还是不满足,则会执行 if 里面嵌套的 else 语句。
如果第一个 if 语句都不满足,则会执行执行最外层的 else 语句。最后,我们的程序输出了 "a > 5"
和 "Over"
。
elif 语句里面可以嵌套任意的 if、elif 以及 else
#!/bin/bash
a=10
if (( $a>20 ))
then
echo "a > 20"
elif (( $a>=10 ))
then
if (( $a > 15 ))
then
echo "a > 15"
elif (( $a>10 ))
then
echo "a > 10"
else
echo "a == 10"
fi
else
echo "a < 10"
fi
echo "Over"
程序运行后,控制台输出如下:
首先,我们定义了一个变量 a,并赋值为 10。接着,我们使用 if 语句判断 a > 20 的条件,如果条件不满足,则继续执行 elif 的判断 a >= 10,如果满足则继续执行 a > 15 的判断和 a > 10的判断,如果最后还是不满足,则会执行 if 里面嵌套的 else 语句。
如果第一个 if 语句都不满足,则会执行执行最外层的 else 语句。最后,我们的程序输出了 "a >= 10"
和 "Over"
。
else 语句里面可以嵌套任意的 if、elif 以及 else
#!/bin/bash
a=10
if (( $a>20 ))
then
echo "a > 20"
elif (( $a>15 ))
then
echo "a > 15"
else
if (( $a >= 10 ))
then
echo "a >= 10"
else
echo "a < 10"
fi
fi
echo "Over"
程序运行后,控制台输出如下:
首先,我们定义了一个变量 a,并赋值为 10。接着,我们使用 if 语句判断 a > 20 的条件,如果条件不满足,则继续执行 elif 的判断 a >= 15,如果条件不满足则继续执行 else 里面嵌套的 if 和 else 的判断。
最后,我们的程序输出了 "a >= 10"
和 "Over"
。
在 Shell 语言中,if 语句、elif 语句和 else 语句可以进行任意的嵌套。