您好,登錄后才能下訂單哦!
這篇文章跟大家分析一下“如何分析Linux shell中的case語句”。內容詳細易懂,對“如何分析Linux shell中的case語句”感興趣的朋友可以跟著小編的思路慢慢深入來閱讀一下,希望閱讀后能夠對大家有所幫助。下面跟著小編一起深入學習“如何分析Linux shell中的case語句”的知識吧。
前兩篇文章已經和大家分享了for循環、whlie循環,那么怎么能少得了case 呢,case也是多分支條件語句,不過只能判斷一種關系條件。
case 語句的語法如下:
case $變量名 in“值 1”);;如果變量的值等于值1,則執行程序1,值2″)如果變量的值等于值2,則執行程序2…省略其他分支…*)如果變量的值都不是以上的值,則執行此程序;;esac
這條語句需要注意以下內容:
case 語句會取出變量中的值,然后與語句體中的值逐一比較。如果數值符合,則執行對應的程序;如果數值不符,則依次比較下一個值;如果所有的值都不符合,則執行”)”(”“代表所有其他值)中的程序。
case 語句以”case”開頭,以”esac”結尾。
在每個分支程序之后要以”;;”(雙分號)結尾,代表該程序段結束(千萬不要忘記)。
注意,多分支 case 條件語句只能判斷變量中的值到底是什么,而不能像多分支if語句那樣,可以判斷多個條件,所以多分支 case 條件語句更加適合單條件多分支的情況。比如,我們在系統中經常看到請選擇”yes/no”,或在命令的輸出中選擇是執行第一個選項,還是執行第二個選項(fdisk 命令)。在這些情況下,使用 case 最為適合。我們寫一個選擇”yes/no”的例子,命令如下:
[root@localhost ~]# vi sh/case.sh#!/bin/bash#判斷用戶輸入read -p “Please choose yes/no: ” -t 30 cho#在屏幕上輸出”請選擇yes/no”,然后把用戶選擇賦予變量chocase $cho in#判斷變量cho的值 “yes”) #如果是yes echo “Your choose is yes!” #則執行程序1 ;; “no”) #如果是no echo “Your choose is no!” #則執行程序2 ;; *) #如果既不是yes,也不是no echo “Your choose is error!” #則執行此程序 ;;esac
解釋一下腳本思路:請用戶輸入 yes 或 no,如果輸入的是 yes,則輸出”Your choose is yes!”;如果輸入的是 no,則輸出”Your choose is no!”;如果輸入的是其他字符,則輸出”Your choose is error!”。
關于如何分析Linux shell中的case語句就分享到這里啦,希望上述內容能夠讓大家有所提升。如果想要學習更多知識,請大家多多留意小編的更新。謝謝大家關注一下億速云網站!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。