2013年12月24日 星期二

test result . 判斷執行成功或失敗

在 shell script 中,需要知道這個 command 執行成功或失敗。
$?
來代表

例如: cd mydir if [ "$?" -ne "0" ]; then echo failed else echo success fi
0 代表成功。



另外,有要用 pipe log ,又要判斷的情況。
例如: make -j4 2>&1 | tee makelog 這時候用 $? 就會是 tee 這個 command 執行的結果,不是 make 的

在bash, 可以用 ${PIPESTATUS[0]} 來代表 make -j4 2>&1 | tee makelog if [ "${PIPESTATUS[0]}" -ne "0" ]; then echo failed else echo success fi

沒有留言:

張貼留言