if条件语句

单分支结构
第一种语法
if <条件表达式>
    then
        指令
fi

第二种语法
if <条件表达式>;then
     指令
fi

上文的"<条件表达式>"部分可以时test、[]、[[]]、(())等条件表达式,甚至可以直接使用命令作为条件表达式。每个if语句都以if开头,并带有then,最后以fi结束
第二种语法中分号相当于命令换行,含义医院

当if后面的<条件表达式>成真时,就会执行then后面的指令或语句;否则,就会忽略then后面的指令或语句,转而执行fi下面的程序
条件语句还可以嵌套(就是if语句里面还有if条件语句)如下面语法示例:
if <条件表达式>
  then
    if <条件表达式>
      then
        指令
    fi
fi


2)双分支结构

if <条件表达式>
    then
        指令集1
else
        指令集2
fi

测试条件表达式 [ -f "$file1" ] && echo 1 || echo 0 相当于下面:
if [ -f "$file1" ]
    then
        echo 1
else
        echo 0
fi


3)多分支结构

if <条件表达式1>
    then
        指令1
elif <条件表达式2>
    then
        指令2
else
        指令3
fi

注意:每个elif都必须带then,else没有then
 

4)条件表达式 test、[]、[[]]、(())等条件表达式语法
test条件表达式

if test
    then
        指令
fi


[]条件表达式

if [ 字符串或算术表达式 ]
    then
        指令
fi


[[]]条件表达式

if [[ 字符串表达式 ]]
    then
        指令
fi


(())条件表达式

if (( 算术表达式 ))
    then
        指令
fi


命令表达式

if  命令
    then
        指令
fi
原文地址:https://www.cnblogs.com/liang545621/p/13136006.html