Shell編程之條件選擇和條件判斷
一、條件選擇(if)與條件判斷(case)的對比:
if語句:是選擇執行,if語句可嵌套。
if條件選擇使用格式 |
||
單分支 |
雙分支 |
多分支 |
if 判斷條件;then 條件為真的分支代碼 fi |
if 判斷條件; then 條件為真的分支代碼 else 條件為假的分支代碼 fi |
if CONDITION1; then if-true elifCONDITION2; then if-ture elifCONDITION3; then if-ture … else all-false fi |
case語句的使用格式 |
||
case支持glob風格的通配符: *: 任意長度任意字符 ?: 任意單個字符 []:指定范圍內的任意單個字符 a|b: a或b |
||
case 變量引用in PAT1) 分支1 ;; PAT2) 分支2 ;; … *) 默認分支 ;; esac |
以上的對比,case相對更加的靈活和書寫上簡單,編寫較復雜的腳步,case語句更勝于if語句。
二、完成下面的習題:
練習:
1、 寫一個腳本/root/bin/createuser.sh,實現如下功能:使用一個用戶名做為參數,如果指定參數的用戶存在,就顯示其存在,否則添加之;顯示添加的用戶的id號等信息
腳本代碼:
腳本執行結果:
2、寫一個腳本/root/bin/yesorno.sh,提示用戶輸入yes或no,并判斷用戶輸入的是yes還是no,或是其它信息
腳本代碼:
腳本執行結果:
3、寫一個腳本/root/bin/filetype.sh,判斷用戶輸入文件路徑,顯示其文件類型(普通,目錄,鏈接,其它文件類型)
腳本代碼:
腳本執行結果:
4、寫一個腳本/root/bin/checkint.sh,判斷用戶輸入的參數是否為正整數
腳本代碼:
腳本執行結果:
原創文章,作者:Aaron_wang,如若轉載,請注明出處:http://www.www58058.com/34381