0

これは、ubuntu マシンで実行しているシェル スクリプト コードの一部です。

myProcess
ret="$?"
if [  "${ret}" == "0" ]
then
   echo good
else
   echo bad "${ret}"
fi

したがって、ロジックは非常に単純です。0myProcess以外の終了ステータスが返された場合、それは悪いことであり、それ以外の場合は良いことです。このコードを別のスクリプトに分離し、コマンド ラインから実行してテストしました。0をmyProcess返すとgood、期待どおりになりました。

ただし、本番環境で実行すると、bad 0. そのため、戻りコードが 0 のように見えても、ifテストは を返すようfalseです。何が起きてる?

4

2 に答える 2