特定の順序で実行する必要がある分析のいくつかのステップを整理している Makefile があります。make
分析にはかなりの時間がかかります (1 日か 2 日) 。完了したら、電子メール通知を受け取りたいです。プロセスの最後に電子メールを自動的に送信して、プロセスが完了したときにアラートを受け取ることができるようにする良い方法はありますか?
私は現在、次のようなことをしています:
# Makefile
all: results1.dat results2.dat results3.dat
python send_email_when_done.py
results1.dat: long_running_program1.py
python $< > $@ # this takes ~12 hours
results2.dat: long_running_program1.py results1.dat
python $^ > $@ # this takes ~2 hours
results2.dat: long_running_program1.py results2.dat
python $^ > $@ # this takes ~30 hours
プロセスが完了すると、send_email_when_done.py
スクリプトは電子メール通知を送信します。ただし、これは、プロセス全体がエラーなしで最初から最後まで実行された場合にのみ機能します。これを行うための良い方法について何か提案はありますか?
内でこれを達成できる提案に対して+1 Makefile
。make
を使用して別のセッションで既に実行していsetsid make > make.out 2>&1
ます。