Linux Shell編程case語句

Linux Shell編程case語句 編程

case語句適用於須要進行多重分支的應用狀況。 vim

        case分支語句的格式以下:bash

            case $變量名 inspa

                模式1ip

            命令序列1input

            ;;it

                模式2table

            命令序列2class

           ;; 變量

                *)

            默認執行的命令序列     ;; 

          esac 

        case語句結構特色以下:

        case行尾必須爲單詞「in」,每個模式必須以右括號「)」結束。

        雙分號「;;」表示命令序列結束。

        匹配模式中但是使用方括號表示一個連續的範圍,如[0-9];使用豎槓符號「|」表示或。

        最後的「*)」表示默認模式,當使用前面的各類模式均沒法匹配該變量時,將執行「*)」後

    的命令序列。

實例分析:

寫一個腳本,判斷一個指定的腳本是不是語法錯誤;若是有錯誤,則提醒用戶鍵入Q或者q無視錯誤並退出其它任何鍵能夠經過vim打開這個指定的腳本;

#!/bin/bash

read -p "please input check script-> " file
if [  -f $file ]; then
        sh -n $file > /dev/null 2>&1
        if [ $? -ne 0 ]; then
                read -p "You input $file syntax error,[Type q to exit or Type vim to edit]" answer
                case $answer in
                    q | Q)
                         exit 0
                         ;;
                     vim)
                         vim $file
                         ;;
                     *)
                        exit 0
                         ;;
                esac

        fielse        echo "$file not exist"        exit 1fi

相關文章
相關標籤/搜索