特定の文字列が出力されたら、実行中のプロセスを再起動しますか?

特定の文字列が出力されたら、実行中のプロセスを再起動しますか?

bashスクリプトでプロセスを繰り返したいと思います。このプロセスは永久に実行する必要がありますが、時には失敗します。

失敗すると、>>747;3R最後の行まで印刷されますが、実行を続けます。

試してみました(単にテスト用)

while [ 1 ]
do
  mono Program.exe
  last_pid=$1
  sleep 3000
  kill $last_pid
done

しかし、まったく動作しません。プロセスはmono Program.exe永久に実行されます(衝突するまで、しかしその後も私のスクリプトは何もしません。)

関連情報