bashスクリプトで作成しようとしているのは、呼び出されたスクリプトが正常に戻ったときに異常終了し、異常終了した場合は異常終了します。 。処理が中止されなかった場合にbashを中止します。逆さにします。
私は
#!/bin/bash
set -e
my_process || echo "Program failed as expected. Good!"
my_process ; echo "Program did not fail as expected. Bad!" ; exit -1
のようにこれをしようとしているが、私は2つを組み合わせる方法が表示されません。あなたは、コマンドのgroupsで&&
と||
演算子を使用することができif
/else
に代わるものとして
これは危険なパターンです。 'a && b || 'b'が成功しなかった場合、' c'は 'c'を実行します。ウィットには、もし本当なら、それから偽。それ以外はlaunch_nukes; fi 'は無害ですが、' true && false || launch_nukes'は私のWarGames 2の脚本の飛び跳ね点です。 –