nohupで実行させたバックグラウンドジョブ終了時にメールで通知させる

ふと、nohupでバックグラウンドジョブ実行させたジョブについて、終了時にメールやSlackで通知させることができないかと思ったので、ちょっとやってみた。
で、以下のようにすることで、nohupで実行するコマンドを変数に入れて実行・通知させることができるようだ。

(cmd="echo foo{bar,baz}";nohup $cmd && (echo $cmd | mail mail@domain.sample -s "Job finish") > ./cmd &)
Sponsored Links

コマンド実行時に上記のように実行することで、バックグラウンドジョブ終了時にメールが送信されてくるようになる。
なお、事前にSlackcatの設定やSlackへのポスト用のスクリプトを作っておけば、ジョブ終了時に同様のやり方でSlackへポストさせることが出来るようになる。

 


Written by blacknon

インフラ系のSE。一時期はプログラマ。 仮想化とオープンソースに興味あり。一日中寝てたい今日このごろ。 スペインとかで働きたいなぁ…(シエスタがあるので)

Leave a Comment

メールアドレスが公開されることはありません。

*