日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Shell else if mysql_Shell if else语句(详解版)

發(fā)布時間:2023/12/2 数据库 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Shell else if mysql_Shell if else语句(详解版) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

和其它編程語言類似,Shell 也支持選擇結(jié)構(gòu),并且有兩種形式,分別是 if else 語句和 case in 語句。本節(jié)我們先介紹 if else 語句,case in 語句將會在《Shell case in》中介紹。

如果你已經(jīng)熟悉了C語言、Java、JavaScript 等其它編程語言,那么你可能會覺得 Shell 中的 if else 語句有點(diǎn)奇怪。

if 語句

最簡單的用法就是只使用 if 語句,它的語法格式為:

if? condition

then

statement(s)

fi

condition是判斷條件,如果 condition 成立(返回“真”),那么 then 后邊的語句將會被執(zhí)行;如果 condition 不成立(返回“假”),那么不會執(zhí)行任何語句。

從本質(zhì)上講,if 檢測的是命令的退出狀態(tài),我們將在下節(jié)《Shell退出狀態(tài)》中深入講解。

注意,最后必須以fi來閉合,fi 就是 if 倒過來拼寫。也正是有了 fi 來結(jié)尾,所以即使有多條語句也不需要用{ }包圍起來。

如果你喜歡,也可以將 then 和 if 寫在一行:

if? condition; ?then

statement(s)

fi

請注意 condition 后邊的分號;,當(dāng) if 和 then 位于同一行的時候,這個分號是必須的,否則會有語法錯誤。

實(shí)例1

下面的例子使用 if 語句來比較兩個數(shù)字的大小:

#!/bin/bash

read a

read b

if (( $a == $b ))

then

echo "a和b相等"

fi

運(yùn)行結(jié)果:

84↙

84↙

a和b相等

在《Shell (())》一節(jié)中我們講到,(())是一種數(shù)學(xué)計算命令,它除了可以進(jìn)行最基本的加減乘除運(yùn)算,還可以進(jìn)行大于、小于、等于等關(guān)系運(yùn)算,以及與、或、非邏輯運(yùn)算。當(dāng) a 和 b 相等時,(( $a == $b ))判斷條件成立,進(jìn)入 if,執(zhí)行 then 后邊的 echo 語句。

實(shí)例2

在判斷條件中也可以使用邏輯運(yùn)算符,例如:

#!/bin/bash

read age

read iq

if (( $age > 18 && $iq < 60 ))

then

echo "你都成年了,智商怎么還不及格!"

echo "來C語言中文網(wǎng)(http://c.biancheng.net/)學(xué)習(xí)編程吧,能迅速提高你的智商。"

fi

運(yùn)行結(jié)果:

20↙

56↙

你都成年了,智商怎么還不及格!

來C語言中文網(wǎng)(http://c.biancheng.net/)學(xué)習(xí)編程吧,能迅速提高你的智商。

&&就是邏輯“與”運(yùn)算符,只有當(dāng)&&兩側(cè)的判斷條件都為“真”時,整個判斷條件才為“真”。

熟悉其他編程語言的讀者請注意,即使 then 后邊有多條語句,也不需要用{ }包圍起來,因?yàn)橛?fi 收尾呢。

if else 語句

如果有兩個分支,就可以使用 if else 語句,它的格式為:

if? condition

then

statement1

else

statement2

fi

如果 condition 成立,那么 then 后邊的 statement1 語句將會被執(zhí)行;否則,執(zhí)行 else 后邊的 statement2 語句。

舉個例子:

#!/bin/bash

read a

read b

if (( $a == $b ))

then

echo "a和b相等"

else

echo "a和b不相等,輸入錯誤"

fi

運(yùn)行結(jié)果:

10↙

20↙

a 和 b 不相等,輸入錯誤

從運(yùn)行結(jié)果可以看出,a 和 b 不相等,判斷條件不成立,所以執(zhí)行了 else 后邊的語句。

if elif else 語句

Shell 支持任意數(shù)目的分支,當(dāng)分支比較多時,可以使用 if elif else 結(jié)構(gòu),它的格式為:

if? condition1

then

statement1

elif condition2

then

statement2

elif condition3

then

statement3

……

else

statementn

fi

注意,if 和 elif 后邊都得跟著 then。

整條語句的執(zhí)行邏輯為:

如果 condition1 成立,那么就執(zhí)行 if 后邊的 statement1;如果 condition1 不成立,那么繼續(xù)執(zhí)行 elif,判斷 condition2。

如果 condition2 成立,那么就執(zhí)行 statement2;如果 condition2 不成立,那么繼續(xù)執(zhí)行后邊的 elif,判斷 condition3。

如果 condition3 成立,那么就執(zhí)行 statement3;如果 condition3 不成立,那么繼續(xù)執(zhí)行后邊的 elif。

如果所有的 if 和 elif 判斷都不成立,就進(jìn)入最后的 else,執(zhí)行 statementn。

舉個例子,輸入年齡,輸出對應(yīng)的人生階段:

#!/bin/bash

read age

if (( $age <= 2 )); then

echo "嬰兒"

elif (( $age >= 3 && $age <= 8 )); then

echo "幼兒"

elif (( $age >= 9 && $age <= 17 )); then

echo "少年"

elif (( $age >= 18 && $age <=25 )); then

echo "成年"

elif (( $age >= 26 && $age <= 40 )); then

echo "青年"

elif (( $age >= 41 && $age <= 60 )); then

echo "中年"

else

echo "老年"

fi

運(yùn)行結(jié)果1:

19

成年

運(yùn)行結(jié)果2:

100

老年

再舉一個例子,輸入一個整數(shù),輸出該整數(shù)對應(yīng)的星期幾的英文表示:

#!/bin/bash

printf "Input integer number: "

read num

if ((num==1)); then

echo "Monday"

elif ((num==2)); then

echo "Tuesday"

elif ((num==3)); then

echo "Wednesday"

elif ((num==4)); then

echo "Thursday"

elif ((num==5)); then

echo "Friday"

elif ((num==6)); then

echo "Saturday"

elif ((num==7)); then

echo "Sunday"

else

echo "error"

fi

運(yùn)行結(jié)果1:

Input integer number: 4

Thursday

運(yùn)行結(jié)果2:

Input integer number: 9

error

總結(jié)

以上是生活随笔為你收集整理的Shell else if mysql_Shell if else语句(详解版)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。