Unix / Linux Shell - if...elif...fi 语句
if...elif...fi 语句是控制语句的一级高级形式,它允许 Shell 从多个条件中做出正确的决定。
语法
if [ expression 1 ] then Statement(s) to be executed if expression 1 is true elif [ expression 2 ] then Statement(s) to be executed if expression 2 is true elif [ expression 3 ] then Statement(s) to be executed if expression 3 is true else Statement(s) to be executed if no expression is true fi
这段代码只是一系列 if 语句,其中每个 if 都是前一个语句的 else 子句的一部分。这里语句是基于真条件执行的,如果条件都不为真则执行 else 块。
示例
#!/bin/sh a=10 b=20 if [ $a == $b ] then echo "a is equal to b" elif [ $a -gt $b ] then echo "a is greater than b" elif [ $a -lt $b ] then echo "a is less than b" else echo "None of the condition met" fi
执行后,您将收到如下结果 −
a is less than b