7、條件結構語句

Ruthless發表於2013-06-21

學習目標
Shell的條件結構語句

Shell程式中的條件語句主要有if語句與case語句。

12-7-1 if語句

語法:

if 表示式1  then
    操作
elif表示式2  then
    操作
elif表示式3  then
    操作
else
    操作
fi
 

Linux裡的if的結束標誌是將if反過來寫成fi;而elif其實是else if的縮寫。其中,elif理論上可以有無限多個。

例項:求1~10被2除餘數為1的整數。

#! /bin/bash
 
for((j=0;j<=10;j++))
do
    if(($j%2==1))
       then
           echo "$j"
    fi
done
 

12-7-2 case語句
語法:

case 表示式 in
值1|值2)
    操作;;
值3|值4)
    操作;;
值5|值6)
    操作;;
*)
    操作;;
esac
 

case的作用就是當字串與某個值相同是就執行那個值後面的操作。如果同一個操作對於多個值,則使用"|"將各個值分開。在case的每一個操作的最後面都有兩個";;"分號是必需的。
例項:Linux是一個多使用者作業系統,編寫一程式根據不同的使用者登入輸出不同的反饋結果。

#! /bin/bash
 
case $USER in
ljq)
    echo "You are ljq!";;
ubuntu)
    echo "You are ubuntu"; //注意這裡只有一個分號
    echo "Welcome !";; //這裡才是兩個分號
root)
    echo "You are root!";echo "Welcome !";;
    //將兩命令寫在一行,用一個分號作為分隔符
*)
    echo "Who are you?$USER?";;
esac

 

 

相關文章