您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關case怎么在shell中使用,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
shell中的case語句:
可以把變量的內容與多個模板進行匹配,再根據成功匹配的模板去決定應該執行哪部分代碼。
使用格式:
case 匹配母板 in
模板1 [ | 模板2 ] … ) 語句組 ;;
模板3 [ | 模板4 ] … ) 語句組 ;;
esac
case語句的匹配是從上往下地匹配順序。因此,case語句編寫的原則是從上往下,模板從特殊到普通。在C語言里,case語句中有default模板,而在shell程序設計中,可能將模板寫成*,就可以完成相同的功能。
例1:
代碼如下:
#!/bin/sh
echo "Please input \"yes\" or \"no\""
read var
case "$var" in
[yY][eE][sS] ) echo "Your input is YES" ;;
[nN][oO] ) echo "Your input is no" ;;
* ) echo "Input Error!" ;;
esac
exit 0
例2:
代碼如下:
#!/bin/bash
FRUIT=$1 #注意沒有空格
if [ -z "$1" ] #中括號跟 -z 要有空格
then
echo "沒有在第一個參數輸入水果"
else
case "$FRUIT" in
apple|APPLE) echo "THE FRUIT is apple";;
banana|BANANA) echo "THE FRULT is banana";;
#可以使用*)來表示默認選項,注意最后要用兩個分號來結尾
*) echo "輸入的是不是我要的水果啊?";;
esac
fi
#--- $1既是外部傳參的值,如:運行該腳本的時候:./test.sh apple
#---此處apple既是$1
附另外一個示例:
代碼如下:
#!/bin/bash
HOSTS=" nss.sh cs.sh SS.sh ds_handler2 tomcat blog httpd "
for myHost in $HOSTS
do
count=(`ps aux |grep -v grep |grep $myHost |wc -l`)
echo $myHost
echo $count
done
上述就是小編為大家分享的case怎么在shell中使用了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。