shell腳本編程之case語(yǔ)句學(xué)習(xí)筆記
case語(yǔ)句是用來(lái)實(shí)現(xiàn)多個(gè)if..else的功能的,但是用法上有些不同,學(xué)過(guò)其他語(yǔ)言的人都知道,case中要對(duì)變量進(jìn)行匹配,如果有一個(gè)匹配成功的話就執(zhí)行相應(yīng)的語(yǔ)句。shell編程中的case語(yǔ)句也是這個(gè)意思,case會(huì)對(duì)字符串進(jìn)行匹配,是從第一個(gè)模式開(kāi)始的,如果有一個(gè)模式已經(jīng)匹配成功的話,其他的模式就不會(huì)再進(jìn)行匹配了,下面看下代碼中的用法吧。
#!/bin/sh echo "please yes or no" read input #case語(yǔ)句的基本用法,記住每一個(gè)匹配后邊都有雙分號(hào),代表本模式的結(jié)束和下一個(gè)#模式的開(kāi)始,在進(jìn)行通配符匹配的時(shí)候不要加雙引號(hào) case "$input" in yes ) echo "yes";; y* ) echo "y*";; y ) echo "y";; no ) echo "no";; n ) echo "n";; * ) echo "default";; esac #合并匹配模式,case的匹配只能匹配一條,想要做到匹配多個(gè)結(jié)果使用如下的方式 case "$input" in y* | Y* ) echo "yes";; n* | N* ) echo "no";; * ) echo "default";; esac #一種更屌的匹配 case "$input" in [yY][eE][sS] | [yY] ) echo "yes";; [nN] | [nN][oO] ) echo "no";; * ) echo "default" echo "end" esac exit 0
相關(guān)文章
Linux shell實(shí)現(xiàn)每天定時(shí)備份mysql數(shù)據(jù)庫(kù)
這篇文章主要介紹了Linux shell實(shí)現(xiàn)每天定時(shí)備份mysql數(shù)據(jù)庫(kù)的代碼,分享給大家,希望大家能夠喜歡。2015-03-03
python實(shí)現(xiàn)Linux異步epoll代碼
本文提供了python實(shí)現(xiàn)Linux異步epoll的代碼,供大家參考使用,希望對(duì)你有幫助2013-11-11
shell實(shí)現(xiàn)FizzBuzzWhizz問(wèn)題示例(拉勾網(wǎng)面試題)
這篇文章主要介紹了shell實(shí)現(xiàn)FizzBuzzWhizz問(wèn)題示例(拉勾網(wǎng)面試題),需要的朋友可以參考下2014-05-05
一鍵配置CentOS iptables防火墻的Shell腳本分享
這篇文章主要介紹了一鍵配置CentOS iptables防火墻Shell腳本分享,可保存到一個(gè)腳本文件中,在新安裝的CentOS系統(tǒng)時(shí)一條命令搞定iptables配置,需要的朋友可以參考下2014-07-07
Shell腳本把文件從GBK轉(zhuǎn)為UTF-8編碼
這篇文章主要介紹了Shell腳本把文件從GBK轉(zhuǎn)為UTF-8編碼,需要的朋友可以參考下2014-06-06
Shell腳本通過(guò)參數(shù)名傳遞參數(shù)的實(shí)現(xiàn)代碼
這篇文章主要介紹了Shell腳本通過(guò)參數(shù)名傳遞參數(shù)的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02

