11、Shell脚本流程控制语句

1、if-else分支结构
    1.if语法格式:
        if       条件
        then
            逻辑块(一般都是些命令)
        fi
     写成一行:适用于终端写法
        If   条件; then   逻辑 ; fi    

    2.If else语法格式:
        if       条件
        then
            逻辑块(一般都是些命令)
        else
            逻辑块
        fi

    3.If else-if else语法格式:
        if       条件1
        then
            逻辑块(一般都是些命令)
        elif    条件2
        then    
            逻辑块
        else
            逻辑块
        fi

   *:分支结构也能够进行嵌套
     多个条件的联合
        -a   逻辑与    当两个条件都成立时,结果为true

        -o   逻辑或,两个条件只要有一个成立,结果为真for循环


2、case多选择语句
    case语句会匹配一个值和一个模式,匹配成功,执行相应逻辑块
    语法:
        case  值   in
        模式1)
            逻辑块
        ;;
        模式2)
            逻辑块
        ;;
        esac
变量


3、for循环结构
    格式:
        for   变量    in   列表
        do
            逻辑
        done
        写成一行:
        for   变量    in  列表;do  逻辑; done;

      Ex:
        for day  in Sun Mon Tue  Wed Thu Fri  Sat
        do
                echo “The day is:$day”
        done

4、select表单循环
    格式:
        select  变量  in   列表
        do
            逻辑块
        done
    写成一行:
    Select  变量 in 列表;do  逻辑   ; done;
表单


5、while循环
    语法:
    while  条件
    do
        逻辑块
    done
select

    *当条件为 ":" 或 true 时会无限循环
循环


6、until循环
    Until循环执行逻辑直到true时中止
    语法:
    util 条件
    do
        逻辑块
    done
终端


7、break与continue
   关键字 break:提早结束循环(即想跳出循环)
   关键字continue:结束当次循环,进行下一次循环
语法


8、shift指令
做用:
    参数左移,每执行一次,参数序列顺次左移一个位置,$#的值少一个,
    多数用于分别处理每个参数,移出去的参数再也不可用


while