2020-10-02Linuxシェルは、URLにアクセスできるかどうかを判断し、定期的にWebサイトにアクセスするときに問題が発生した場合は再起動するため、障害を確認したくありません。

#网站守护
testurl='http://wjsou.com'
status=$(curl -s -m 5 -IL $testurl|grep 200)
if [ "$status" == "" ]
then
	echo $(date)$testurl' is OFF'>>/root/log_wjsou_off.txt
	reboot
fi

#采集进程守护
rownum=$(jps |grep BaiduEngine4 |wc -l)
if [ $rownum != 1 ]
then
	echo $(date)"BaiduEngine4 $rownum">>/root/log_wjsou_off.txt
	kill -9 `jps | grep BaiduEngine4 | awk '{print $1}'`
	rm -rf /root/Myfile.txt
	nohup java -jar /root/BaiduEngine4.jar >/dev/null 2>&1 &
fi

curl -s -m 5 -IL'http://www.baidu.com '| grep 200
-sサイレントモードでは、進行状況バーとエラーメッセージは表示されません。
-m max-time、このリクエストの最大時間。5秒。
-I curlは、応答ヘッダー情報のパラメーターのみを判断します。-
Lはジャンプを許可します
| grep特定の文字列がコマンドの出力に含まれるかどうか。たとえば、ls | grep 200は、lsコマンドの実行後に出力が200を含むかどうかを検索するために使用されます。

 

| awk '{print $ 1}'を空白で分割して、テキストの最初の段落を表示します
| wc -lは、ファイルまたはコンテンツの行数のみを出力します
| grep-vは特定のフィールドを除外します。たとえば、cat test.log | grep "login" | grep -v "deviceType"は、test.logにログイン情報が含まれていて、deviceTypeフィールドがないことを検出します
| grep-wはすべての単語に一致します

jps(Java仮想マシンプロセスステータスツール)は、現在のすべてのjavaプロセスのpidを表示するためにjavaによって提供されるコマンドです。

おすすめ

転載: blog.csdn.net/chenhao0568/article/details/108899849