3 回の試行回数を超えた場合に、スクリプトをスキップしてサーバー内のクラッシュしたプロセスを再起動する簡単な方法はありますか?

3 回の試行回数を超えた場合に、スクリプトをスキップしてサーバー内のクラッシュしたプロセスを再起動する簡単な方法はありますか?

hello.sh という名前のファイルが 1 つあります。crontab から 30 分ごとにそのファイルを実行しています。

hello.sh には、サービスが実行されているかどうかを確認するスクリプトがあります。実行されていない場合は、メールを送信してサービスを再起動します。

hello.sh スクリプト:

b=$JAVA_HOME/bin/jps| grep "Bootstrap" | awk '{print $2}' if [ "$b" = "LISTEN" ]; then echo "Bootstrap is running" elif [ "$b" == "" ]; then mail -s "Message from 33 Server, The service is not running its going to restart the server " [email protected] sudo catalina.sh run

完璧に動作しています。現在、このプログラムを 30 分ごとに 1 回実行しています。サービスが実行されていない場合は、サービスの再起動を試みます。現在、このスクリプトを 3 回チェックする必要があります。1:30 時間経過してもサービスが再起動されない場合は、チェック プロセスをスキップして、「このサービスは実行されていないため、手動で開始する必要があります」などのメールを送信する必要があります。サービスを手動で開始するまで、スクリプトは実行されません。サービスを手動で開始した後は、30 分ごとに crontab からサービスを 1 回チェックする必要があります。

可能であれば、どうすればいいでしょうか?

関連情報