shell中的判斷語句和循環(huán)語句

if語句

if語句與其他語言中的類似玛迄,不過不需要大括號婚苹,在表達(dá)式后面需要添加個關(guān)鍵字then

a=10
b=20

if [ $a == $b ]
then
    echo "a is equal to b"
elif [ $a -gt $b ]
then
    echo "a is greater than b"
elif [ $a -lt $b ]
then
    echo "a is less than b"
else
    echo "I am just a soso"
fi


num1=$[2*3]
num2=$[1+5]
if test $[num1] -eq $[num2]
then
echo 'The two numbers are equal!'
else
echo 'The two numbers are not equal!'
fi

Shell中的 test 命令用于檢查某個條件是否成立中符,它可以進(jìn)行數(shù)值配阵、字符和文件三個方面的測試,之前的這三個運算符都可以

case...esac語句

case...esac語句冗澈,與其他語言中的switch...case語句類似钦勘,是一種多分支選擇結(jié)構(gòu)
case工作方式如下所示。取值后面必須為關(guān)鍵字 in亚亲,每一模式必須以右括號結(jié)束彻采。取值可以為變量或常數(shù)。匹配發(fā)現(xiàn)取值符合某一模式后捌归,其間所有命令開始執(zhí)行直至 ;;肛响。;; 與其他語言中的 break 類似,意思是跳到整個 case 語句的最后惜索。
取值將檢測匹配的每一個模式特笋。一旦模式匹配,則執(zhí)行完匹配模式相應(yīng)命令后不再繼續(xù)其他模式巾兆。如果無一匹配模式猎物,使用星號 * 捕獲該值,再執(zhí)行后面的命令角塑。

echo 'Input a number between 1 to 4'
echo 'your number is:\c'
read aNum
case $aNum in
    1)
        echo 'you select 1'
    ;;
    2)
        echo 'you select 2'
    ;;
    3)
        echo 'you select 3'
    ;;
    4)
        echo 'you select 4'
    ;;
    *)
        echo 'you do no select a number between 1 to 4'
    ;;
esac

for循環(huán)

for loop in 1 2 3 4 5
do
    echo "The value is: $loop"
done

for str in 'This is a string'
do
    echo $str
done


for FILE in $HOME/.bash*
do
echo $FILE
done

while循環(huán)

i=10
while [ $i -ne 0 ]
do
    i=`expr $i - 1`
    echo $i
done

while循環(huán)可用于讀取鍵盤信息蔫磨。下面的例子中,輸入信息被設(shè)置為變量FILM圃伶,按<Ctrl-D>結(jié)束循環(huán)堤如。

echo 'type <CTRL-D> to terminate'
echo -n 'enter your most liked film:'
while read FILM
do
    echo "yeah!great film the $FILM"
done

until循環(huán)

a=0

until [ ! $a -lt 15 ]
do
echo $a
a=`expr $a + 1`
done

在shell中可以使用break和continue來跳出循環(huán)蒲列,與其他語言中用法類似,不同的一點是煤惩,break后面可以跟個數(shù)字嫉嘀,表示跳出第幾層循環(huán)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末魄揉,一起剝皮案震驚了整個濱河市剪侮,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌洛退,老刑警劉巖瓣俯,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異兵怯,居然都是意外死亡彩匕,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進(jìn)店門媒区,熙熙樓的掌柜王于貴愁眉苦臉地迎上來驼仪,“玉大人,你說我怎么就攤上這事袜漩⌒靼郑” “怎么了?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵宙攻,是天一觀的道長奠货。 經(jīng)常有香客問我,道長座掘,這世上最難降的妖魔是什么递惋? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮溢陪,結(jié)果婚禮上萍虽,老公的妹妹穿的比我還像新娘。我一直安慰自己形真,他們只是感情好贩挣,可當(dāng)我...
    茶點故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著没酣,像睡著了一般。 火紅的嫁衣襯著肌膚如雪卵迂。 梳的紋絲不亂的頭發(fā)上裕便,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天,我揣著相機與錄音见咒,去河邊找鬼偿衰。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的下翎。 我是一名探鬼主播缤言,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼视事!你這毒婦竟也來了胆萧?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤俐东,失蹤者是張志新(化名)和其女友劉穎跌穗,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體虏辫,經(jīng)...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡蚌吸,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了砌庄。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片羹唠。...
    茶點故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖娄昆,靈堂內(nèi)的尸體忽然破棺而出佩微,到底是詐尸還是另有隱情,我是刑警寧澤稿黄,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布喊衫,位于F島的核電站,受9級特大地震影響杆怕,放射性物質(zhì)發(fā)生泄漏族购。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一陵珍、第九天 我趴在偏房一處隱蔽的房頂上張望寝杖。 院中可真熱鬧,春花似錦互纯、人聲如沸瑟幕。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽只盹。三九已至,卻和暖如春兔院,著一層夾襖步出監(jiān)牢的瞬間殖卑,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工坊萝, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留孵稽,地道東北人许起。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像菩鲜,于是被迫代替她去往敵國和親园细。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,383評論 0 5
  • 第2章 基本語法 2.1 概述 基本句法和變量 語句 JavaScript程序的執(zhí)行單位為行(line)接校,也就是一...
    悟名先生閱讀 4,149評論 0 13
  • 什么是運維 術(shù)語名詞 IDC--(Internet Data Center)互聯(lián)網(wǎng)數(shù)據(jù)中心馅笙,主要服務(wù)包括整機租用伦乔、...
    lyh165閱讀 2,705評論 0 19
  • 前幾天碰到一位老友,閑談了幾句董习,便頓覺感慨萬千烈和。我們相識于高中的校園,一別十年皿淋,卻在一次培訓(xùn)中偶然相遇招刹。當(dāng)年,...
    殘墨斷夢閱讀 145評論 0 0
  • Navigator簡介 處理應(yīng)用程序中不同場景之間的轉(zhuǎn)換窝趣。Navigator是跨平臺的導(dǎo)航組件疯暑,不管在iOS還是A...
    武昌魚艾特222閱讀 2,123評論 3 8