Unix / Linux Shell - if...elif...fi 语句

  • 简述

    if...elif...fi 语句是控制语句的一级高级形式,它允许壳牌从几个条件中做出正确的决定。
  • 句法

    
    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