これは、ubuntu マシンで実行しているシェル スクリプト コードの一部です。
myProcess
ret="$?"
if [ "${ret}" == "0" ]
then
echo good
else
echo bad "${ret}"
fi
したがって、ロジックは非常に単純です。0myProcess
以外の終了ステータスが返された場合、それは悪いことであり、それ以外の場合は良いことです。このコードを別のスクリプトに分離し、コマンド ラインから実行してテストしました。0をmyProcess
返すとgood
、期待どおりになりました。
ただし、本番環境で実行すると、bad 0
. そのため、戻りコードが 0 のように見えても、if
テストは を返すようfalse
です。何が起きてる?