case語句使用舉例

2021-08-09 10:07:48 字數 2014 閱讀 4153

shell中的case語句:

可以把變數的內容與多個模板進行匹配,再根據成功匹配的模板去決定應該執行哪部分**。

使用格式:

case 匹配母板 in

模板1 [ | 模板2 ] … ) 語句組 ;;

模板3 [ | 模板4 ] … ) 語句組 ;;

esac

case語句的匹配是從上往下地匹配順序。因此,case語句編寫的原則是從上往下,模板從特殊到普通。在c語言裡,case語句中有default模板,而在shell程式設計中,可能將模板寫成*,就可以完成相同的功能。

注意: 1、*) 相當於其他語言中的default。

2、除了*)模式,各個分支中;;是必須的,;;相當於其他語言中的break

3、 | 分割多個模式,相當於or

下面是一些例子:

fruit=$1 #注意沒有空格

if [ -z "$1" ] #中括號跟 -z 要有空格

then

echo "沒有在第乙個引數輸入水果"

else

case "$fruit" in

banana|banana) echo "the frult is banana";;

#可以使用*)來表示預設選項,注意最後要用兩個分號來結尾

*) echo "輸入的是不是我要的水果啊?";;

不知道為什麼ubuntu上面有些demo執行效果和centos上執行總是有些差別,下次網上仔細找找有沒什麼相關的說明。

erlang 中case語句的使用

在erlang中,至少有三種可互換的流程控制方式 函式宣告上的pattern match,case語句,if語句 這裡講將case語句和函式宣告上的pattern match的區別。case語句的格式如下 case conditional expression of pattern1 express...

case分支語句

case分支語句 匹配執行的方式,針對的變數預先存在的值,判斷該變數 實際取值是否和預設的值相匹配,如果匹配,就執行相應的操作 如果不匹配,就執行預先設定好的預設操作 語法結構 case 變數值 in 模式1 命令序列1 模式2 命令序列2 預設命令序列 esac bin bash read p 請...

case 條件語句

case 條件語句語法格式 case 變數 in值 1 指令1.值 2 指令2.指令3.esac 範例根據使用者輸入判斷使用者收入的是哪個數字 如果使用者輸入的是1 9的任易數字,則輸出對應輸入的數字 如果是其他數字級字元,則發回輸入不正確的提示,並退出 bin bash read p please...