私はset -e
を使用してエラー時に中止します。Bashはエラーを無視してリターンコードを取得します
しかし、私はエラーを無視したいと誤って私はエラーの私は関数のリターンコードをしたい。
例:
do_work || true
if [ $? -ne 0 ]
then
echo "Error"
fi
しかし、それはリターンコードを動作していないが、常に真の原因である|| true
do_workエラー時にリターンコードを取得するにはどうすればよいですか?
その呼び出しの直前にエラーで終了するのを無効にしないのはなぜですか? – Mat
@Mat yaありがとうございます。しかし、知識の目的のために私はリターンコードをキャプチャする方法はありますか? –