バックグラウンド:
計算生物学ソフトウェアのテストスクリプトを書いています。私がテストしているソフトウェアは、実行するのに数日から数週間かかることもあるため、システムのクラッシュや停電の場合に備えて、回復機能が組み込まれています。
回復システムをテストする方法を見つけようとしています。具体的には、制御された方法でプログラムを「クラッシュ」させる方法がわかりません。SIGKILL命令をなんらかのタイミングで実行してからしばらくしてから実行することを考えていました。これはおそらく理想的ではありません。テストケースは毎回同じ速度で実行されることが保証されていないため(共有環境で実行されるため)、ログを目的の出力と比較するのは困難です。
このソフトウェアは、完了した分析の各セクションの行を印刷します。
質問:
プログラムからの出力をキャプチャし、特定の行/行数がプログラムによって出力されたときにプログラムを強制終了するための良い/エレガントな方法(シェルスクリプトで)があるかどうか疑問に思っていましたか?