unix shell學習之檢測返回代碼
運行任何命令之時,linux都會返回前一個命令執行相關的響應,稱為返回代碼(return code),那怎麼回去到該代碼呢?
很簡單,使用$?就可以查看,通過查看可以得到,如果命令成功執行,返回代碼為0,如果未成功執行,則返回一個除0以外的值。
我們可以通過書上的小例子來做一下試驗,下面代碼為了更好的學習shell,寫出了三種不同的if語句,但是其作用是相同的。
#!/bin/bash
test -d /usr/local/bin
if [ "$?" -eq 0 ]
then
echo "/usr/local/bin exist!"
else
echo "/usr/local/bin does not exist!"
fi
#-----------------------------------------
if test -d /usr/local/bin
then
echo "/usr/local/bin exist!"
else
echo "/usr/local/bin does not exist!"
fi
#-------------------------------------
if [ -d /usr/local/bin ]
then
echo "/usr/local/bin exist!"
else
echo "/usr/local/bin does not exist!"
fi