失敗した時のみ実行する記述方法
以下のように書くと、左辺の処理が成功(exitコード 0*1)の場合に右辺を実行するようになる。
gcc hoge.c && ./a.out
つまり gcc のコンパイルが正常に終了した場合にはプログラムの実行を行う、ということだ。
おれは良くこんな風に書く。
make clean && make && make install
こうしておけば常に新しいソースをベースにして0からコンパイルできる。
で、本題
ビルド失敗等をトリガーにしてメールを送るとかする場合は以下のように書く。
make clean && make && make install || 失敗した時のコマンド
このように
演算子
を使う事で左辺が 0 以外の場合に実行するようになる。これは、 make で失敗しても make install で失敗しても、 || 以降のコマンドが実施される。
これは便利ですね!
*1:プログラム実行後に echo $? とかやると見れるヤツね