中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

shell case語句

發布時間:2020-05-25 11:46:14 來源:網絡 閱讀:344 作者:大阿鵬 欄目:系統運維

?????case語句相當于多分支的if/elif/else語句,而在使用case會讓腳本看起來更簡單工整。在case語句中,程序會將獲取到的值與case表達式中的條件逐一進行對比,如果匹配則執行對應的語句,遇到雙分號(;;)則停止執行。如果一直未找到匹配項,則執行*)后面的語句,相當其他語言中的default功能。


基本語法?

case "var" in
? value 1)
? ? 語句
? ? ;;
? value 2)
? ? 語句
? ? ;;
? value n)
? ? 語句
? ? ;;
? *)
? ? 語句
esac


最后一個分支語句,即esac前,可以省略雙分號


case示例

[root@localhost Test]# cat case.sh
#!/bin/bash
a=$1
case "${a}" in
?1)
? echo "input number is 1"
? ;;
?2)
? echo "input number is 2"
? ;;
?3)
? echo "input number is 3"
? ;;
?*)
? echo "case default value"
esac

[root@localhost Test]# bash case.sh 1
input number is 1 ? # 匹配條件1
[root@localhost Test]# bash case.sh 3
input number is 3 ? # 匹配條件3
[root@localhost Test]# bash case.sh a
case default value ? # 未匹配到條件


使用if語句同樣可以達到同樣的效果

[root@localhost Test]# cat caseif.sh
#!/bin/bash
a=$1
if [ ${a} -eq 1 ]
?then
? echo "input number is 1"
elif [ ${a} -eq 2 ]
? then
? ?echo "input number is 2"
elif [ ${a} -eq 3 ]
? then
? ? echo "input number is 3"
else
?echo "case default value"
fi

[root@localhost Test]# bash caseif.sh 1
input number is 1
[root@localhost Test]# bash caseif.sh 3
input number is 3
[root@localhost Test]# bash caseif.sh a
caseif.sh: 第 3 行:[: a: 期待整數表達式
caseif.sh: 第 6 行:[: a: 期待整數表達式
caseif.sh: 第 9 行:[: a: 期待整數表達式
case default value


case語句總結

1、case語句比較適合變量值較少且為固定的數字或字符串集合的情況。

2、case一般常用于編寫服務的啟動腳本等

3、if則是取值進行判斷比較,應用面比case要廣,大部分的case語句可以使用if進行替代

?


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

太仆寺旗| 乌兰察布市| 周口市| 大厂| 乌海市| 横山县| 玉溪市| 平塘县| 信丰县| 贵定县| 维西| 新宁县| 和田市| 井冈山市| 富平县| 逊克县| 鄢陵县| 盐亭县| 贺兰县| 辛集市| 高尔夫| 葫芦岛市| 晋江市| 扶沟县| 安化县| 石城县| 鲁山县| 金塔县| 河池市| 湘阴县| 泰兴市| 岳西县| 门头沟区| 洛川县| 彝良县| 岐山县| 桓仁| 灵台县| 丹阳市| 东至县| 荔波县|