08. Shell腳本邏輯判斷

  • if 判斷

  1. if開(kāi)始判斷,反順序fi結(jié)束
  2. if后跟判斷條件,then后跟條件成立后,要執(zhí)行的代碼
  3. if不滿足的時(shí)候,則執(zhí)行else
  4. elif為當(dāng)上一個(gè)條件不滿足時(shí)才會(huì)執(zhí)行
  5. 判斷條件必須以 (()) 包括,不得缺少
  6. 判斷條件也可以使用 [] ,但[]和條件之間必須有空格,且條件的判斷不可再使用 < 這些符號(hào),需使用 -lt
符號(hào) 代表符 含義
= -eq 等號(hào)
!= -ne 不等于
> -gt 大于
>= -ge 大于等于
< -lt 小于
<= -le 小于等于
  1. shell腳本中if還常判斷文件的屬性,使用[ -xxx filename ]
參數(shù) 含義
-e 判斷文件或目錄是否存在
-d 判斷是否是目錄,且此目錄是否存在
-f 判斷是否是普通文件,且此文件是否存在
-r 判斷是否有讀權(quán)限
-w 判斷是否有寫(xiě)權(quán)限
-x 判斷是否有執(zhí)行權(quán)限
  1. shell語(yǔ)句中,一行若要寫(xiě)多條語(yǔ)句,則必須以 ; 分號(hào)分割.若換行,則無(wú)需 ; 分號(hào)結(jié)尾
#! /bin/bash

#Init var
score="Pls input your score :"
exam_not="Sorry ! You didn't pass the exam."
exam_yes="Congratulation ! You pass the exam."

# If
read -p "$score" a
if ((a<60));then
        echo $exam_not
fi

# If & else
read -p "$score" b
if ((b<60));then
        echo $exam_not
else
        echo $exam_yes
fi

# If & else & elif
read -p "$score" c
if ((c<60))
then
        echo $exam_not
elif ((c>=60 && c<=100));then
        echo $exam_yes
else
        echo "Sorry ! The information of you had inputted is wrong !"
fi

# []
d=10;if [ $d -gt 5 ];then echo "Pass !";fi

# File attr
if [ -r test01_if.sh ];then echo "Has !";fi
image.png

  • case 分支

  1. case可以有無(wú)限個(gè)分支
  2. case語(yǔ)句必須以反數(shù)序單詞esac結(jié)束
  3. 選項(xiàng)*代表前面的選項(xiàng)不滿足時(shí)執(zhí)行的分支
  4. 每個(gè)分支必須以;;結(jié)束
#! /bin/bash
# Judge the number is even or odd !

read -p "Pls input a num : " a
b=$[$a%2]
case $b in
1)
        echo "The num is even !"
        ;;
0)
        echo "The num is odd !"
        ;;
*)
        echo "It is error !"
        ;;
esac
image.png

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一 大灰狼喜歡小白兔,可是不敢給它說(shuō),他怕嚇到小白兔。 他聽(tīng)說(shuō)小白兔愛(ài)吃胡蘿卜。 于是大灰狼去挖了好多好多的胡蘿卜...
    叫我七夜夜閱讀 894評(píng)論 0 1
  • 感恩爸爸,他今天帶我們?nèi)フ咸?。那兒的葡萄可甜啦,我們邊摘邊吃。可好玩兒啦?感恩葡萄園的老板,他大方的給我們切甜...
    寸心潔白閱讀 225評(píng)論 0 0
  • Android UI Libs之DiscreteSeekBar 1. 說(shuō)明 DiscreteSeekBar可以實(shí)現(xiàn)...
    lavor閱讀 3,630評(píng)論 2 9
  • 如果我們不去有意識(shí)地培養(yǎng)好習(xí)慣,那么我們就會(huì)無(wú)意識(shí)地屈從壞習(xí)慣。到過(guò)農(nóng)村或者經(jīng)常爬山的人應(yīng)該都看到過(guò),長(zhǎng)年沒(méi)有人住...
    勇赴閱讀 2,206評(píng)論 0 4

友情鏈接更多精彩內(nèi)容