6、RedHat7系列——Shell腳本(二)

1、if條件語句

if語句分為單分支結構、雙分支結構、多分支結構;

if條件語句的單分支結構由if、then、fi關鍵詞組成,而且只在條件成立後才執行預設的命令;

示例:

判斷文件是否存在,如果存在就結束,反之則去創建:

6、RedHat7系列——Shell腳本(二)

執行腳本

6、RedHat7系列——Shell腳本(二)

判斷主機是否在線:

6、RedHat7系列——Shell腳本(二)

腳本說明:$?變量,作用是顯示上一次命令的執行返回值;$1是參數;

執行腳本:

6、RedHat7系列——Shell腳本(二)

當用戶輸入的值大於等於85分且小於等於100分,輸出excellent字樣;

若值大於等於70分且小於等於84分,則輸出pass;否則輸出fail;

6、RedHat7系列——Shell腳本(二)

腳本說明:

      1. read是用來讀取用戶輸入信息的命令;

      2. GRADE接收到的用戶輸入信息;

      3. -p參數用於向用戶顯示一定的提示信息;

執行結果:

6、RedHat7系列——Shell腳本(二)

2、for循環語句

for循環語句允許腳本一次性讀取多個信息,然後逐一對信息進行操作處理;

示例:

創建用戶文件

6、RedHat7系列——Shell腳本(二)

編寫循環執行創建用戶腳本

6、RedHat7系列——Shell腳本(二)

執行腳本:

6、RedHat7系列——Shell腳本(二)

從文本中自動讀取主機列表,然後自動逐個測試這些主機是否在線

6、RedHat7系列——Shell腳本(二)

編寫腳本:

6、RedHat7系列——Shell腳本(二)

執行腳本(如果提示沒有權限執行:chmod +x ckhost.sh):

6、RedHat7系列——Shell腳本(二)

3、while循環語句

while條件循環語句是一種讓腳本根據某些條件來重複執行命令的語句,它的循環結構往往在執行前並不確定最終執行的次數;

示例:

編寫一個用來猜測數值大小的腳本:

6、RedHat7系列——Shell腳本(二)

腳本說明:每當循環到let TIMES++命令時都會讓TIMES變量內的數值加1;

執行腳本:

6、RedHat7系列——Shell腳本(二)

4、case條件語句

case語句是在多個範圍內匹配數據,若匹配成功則執行相關命令並結束整個條件測試;而如果數據不在所列出的範圍內,則會去執行星號(*)中所定義的默認命令;

示例:

通過在腳本中組合使用case條件測試語句和通配符判斷用戶輸入的字符類型

6、RedHat7系列——Shell腳本(二)

執行腳本:

6、RedHat7系列——Shell腳本(二)


分享到:


相關文章: