shell 編程if條件判斷與if 真假判斷
if條件判斷與if真假判斷
目錄:
1.正確寫法
2.錯誤寫法
3.總結
一、正確寫法
在編寫shell腳本時,為簡化代碼的行號及結構的簡約型,通常將命令執行結果和判斷通過一條語句進行編寫(在C語言編寫程序時,經常遇到此種寫法),如:
[[email protected] ~]#touch test.sh if useradd root &>/dev/null ; then #如果用戶添加成功,則不顯示,否則顯示用戶添加失敗 else fi [[email protected] ~]#./test.sh user1 created failed |
二、錯誤寫法
但是如果因記憶失誤或編寫腳本習慣性,添加[ ]判斷時,腳本變為如下:
[[email protected] ~]#touch test.sh if [ useradd user1 &>/dev/null ] ; then #如果用戶添加成功,則不顯示,否則顯示用戶添加失敗 else fi [[email protected] ~]#./test.sh # user1 created failed [[email protected] ~]#id user1 #用戶添加成功,本應該不顯示,但顯示添加失敗 [[email protected] ~]#userdel -r user1 ######################調試模式執行################################################### [[email protected] ~]#bash -x 4.sh + echo ‘user1 created failed‘ #條件判斷默認是判斷useradd user1添加成功後,命令結果無顯示 |
三、總結
總結,在使用if判斷及命令執行結果的語法結構時,命令行中間切忌加判斷,條件判斷必須加條件判斷表達式。其本質是,if 真假判斷 和 if 條件判斷的區別
真假判斷 條件判斷 if cmd ; then if [ statement ]; then cmd statement cmd statement else else cmd statement cmd statement fi fi |
####################################################################################
###具體詳情請咨詢微信:QQ767743577 郵箱地址: [email protected],有問必答,有答必應,人人為我,我為人人###
####################################################################################
本文出自 “每天進步一點點,自律” 博客,請務必保留此出處http://wbxue.blog.51cto.com/11831715/1964460
shell 編程if條件判斷與if 真假判斷