決して死なないシェルスクリプト

決して死なないシェルスクリプト

私は決して死なないシェルスクリプトを書くのが好きです。つまり、シェルスクリプトはデータベースが5秒ごとに生きていることを繰り返し確認します。問題は、時々シェルスクリプトが異常終了するか、2つのスクリプトのいずれかで終了することです。

停止または終了した場合でも、自分で呼び出されるスクリプトが必要です。これを行う方法はありますか? ? ?

ベストアンサー1

crontab ジョブを使用してスクリプトを呼び出します。

crontab -e

次の行を追加

* * * * * /path/to/your/script

これにより、毎分スクリプトが実行されます。ここでは、異なる実行時間をカスタマイズする方法を確認できます。クローンタブのマニュアルページ

申し訳ありません。 5秒ごとに実行する必要がある要件を見逃しました。ただし、コメントでは、Jonnhyが述べたように、cronjobを介してスクリプトが実行されていることを確認できます。

クローンタブスクリプト:

#!/usr/bin/bash
ps -ef|grep -v grep |grep script_name
if [ $? != 0 ]; then
    path/to/script/script_name
fi

スクリプトから:

#!/usr/bin/bash
while true; do
    #perform the test        
    sleep 5
done

または、initスクリプトに基づいてLinuxを使用している場合は、/ etc / inittabにアクセスできます。

10:35:respawn:/path/ro/your/script

inittabに入れることが最善の方法であるかどうかはわかりません。

システムにすでにsystemdがインストールされている場合は、これを行う方法もありますが、ここに入れる経験はありません。

おすすめ記事