在撰寫自動化腳本中常常需要配合不同的shell script來完成一連串的工作,有時候就需要判斷一個script是否正確完成來決定要不要繼續執行,這時候可以使用$?來取得上一個程式執行的exit code。
首先先有一個簡單的scrpt test1.sh,讓他exit 1:
接著有另外一個script test2.sh來執行test1.sh,並且判斷exit code
執行結果,因為test1.sh的exit code是1,所以test2.sh會print出FAIL
首先先有一個簡單的scrpt test1.sh,讓他exit 1:
#!/bin/bash
# test1.sh
exit 1
接著有另外一個script test2.sh來執行test1.sh,並且判斷exit code
#!/bin/bash
# test2.sh
bash test1.sh
RETVAL=$?
if [ $RETVAL == '1' ]; then
echo FAIL
else
echo SUCCESS
fi
執行結果,因為test1.sh的exit code是1,所以test2.sh會print出FAIL
# bash test2.sh
FAIL
留言
張貼留言