CAD異常退出後CAD備份檔案怎麼恢復?
阿新 • • 發佈:2022-03-31
if語句是迴圈語句中的一種,又被稱為控制語句。
通過制定條件進行判斷執行
只有條件成立的時候才會執行相應的程式碼,否則不會進行任何操縱。
1、單分支if語句
對於單分支的選擇結構,只有在“條件成立”時才會執行相應的程式碼,否則不會執行任何操作。
單分支if語句的語法格式如下所示:
if語句格式
if 條件測試操作
then
命令序列
fi
單分支if語句示例:
檢視/root/text是否存在
[root@yaoguang ~]# ls
first.sh shell user.sh
結果不存在/root/text
[root@yaoguang ~]# vim if01.sh #!/bin/bash #this is my first if scripts if [ ! -d /root/text ] #條件測試:判斷/root/text是否存在 then #如不存在則執行下面的命令 mkdir -p /root/text fi
執行結果
[root@yaoguang ~]# sh if01.sh
[root@yaoguang ~]# ls
first.sh if01.sh shell text user.sh
2、雙分支if語句
對於雙分支的選擇結構,要求針對“條件成立” “條件不成立”兩種情況分別執行不同的操作。
雙分支if語句的語法格式如下所示:
if 條件測試語句
then 條件成立則執行
命令序列1
else 條件不成立則執行
命令序列2
fi
[root@yaoguang ~]# vim if_shuang.sh <!--編寫指令碼測試網路連通性--> #!/bin/bash ping -c 3 -i 0.2 -W 3 $1 &> /dev/null <!--ping 3次,間隔0.2秒,超時3秒,$1為位置變數--> if [ $? -eq 0 ] <!--測試條件為前一條的命令執行成功--> then <!--如果成功,則執行以下命令--> echo "Host:$1 is UP!!!" else <!--若不成功,則執行以下命令--> echo "Host:$1 is DOWN!!!" fi <!--if語句結束-->
執行結果
[root@yaoguang ~]# chmod +x if_shuang.sh <!--新增執行許可權--> [root@yaoguang ~]# ./if_shuang.sh 192.168.100.10 <!--使用指令碼測試100.10網路是否通訊--> Host:192.168.100.10 is UP!!! <!--UP證明這臺主機是開機狀態--> [root@yaoguang ~]# ./if_shuang.sh 192.168.100.103 <!--使用指令碼 測試100.103網路是否通訊--> Host:192.168.100.103 is DOWN!!! <!--DOWN證明這臺主機是關機狀態-->
雙分支if語句的執行流程:
首先判斷條件測試操作的結果,
如果成立,則執行then後的命令序列1,忽略else後的命令序列2,直到遇見fi結束判斷;
若不成立,則忽略then及後面的命令序列1,直接跳至else後面的命令序列2,直到遇見fi結束判斷
擴充套件:ping
-c:ping包的次數
-i:ping包的間隔
-w:超時的時間間隔
3、 多分支if語句
由於if語句可以根據測試結果的成立、不成立分別執行操作,所有能夠巢狀使用,進行多次判斷。
例如,首先判斷某學生的得分是否及格,若及格則再次判斷是否高於90分等。
多分支if語句的語法格式如下:
if 條件測試1
then 命令序列1
elif 條件測試2
then 命令序列2
else 命令序列3
fi
#### 多分支if語句示例:
[root@yaoguang ~]# vim if_duo.sh <!--編寫指令碼測試學生成績-->
#!/bin/bash
read -p "請輸入考試成績:" insert
if [ $insert -ge 85 ] && [ $insert -le 100 ] <!--85~100分,優秀-->
then
echo "恭喜您考試成績為優秀!!!"
elif [ $insert -ge 70 ] && [ $insert -le 84 ] <!--70~84分,合格-->
then
echo "恭喜您考試成績為合格!!!"
else <!--其他分數,不合格-->
echo "很遺憾您考試成績可以收拾收拾回家種苞米了!!!"
fi <!--if語句結束-->
[root@yaoguang ~]# chmod +x if_duo.sh <!--新增執行許可權-->
[root@yaoguang ~]# ./if_duo.sh <!--執行指令碼-->
請輸入考試成績:94 <!--94分優秀-->
恭喜您考試成績為優秀!!!
[root@yaoguang ~]# ./if_duo.sh
請輸入考試成績:82
恭喜您考試成績為合格!!!
[root@yaoguang ~]# ./if_duo.sh
請輸入考試成績:71
恭喜您考試成績為合格!!!
[root@yaoguang ~]# ./if_duo.sh
請輸入考試成績:32
很遺憾您考試成績可以收拾收拾回家種苞米了!!!