2020-10-02Linux-Shell beurteilt, ob auf die URL zugegriffen werden kann, und startet die Website neu, wenn beim regelmäßigen Besuch der Website ein Problem auftritt.

#网站守护
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 Silent-Modus, der Fortschrittsbalken und die Fehlermeldung werden nicht angezeigt.
-m max-time, die maximale Zeit für diese Anforderung. 5 Sekunden.
-Ich locke nur die Parameter der Antwortheader-Informationen.
-L erlaubt Sprung
| grep Gibt an, ob eine bestimmte Zeichenfolge in der Ausgabe eines Befehls enthalten ist. Beispielsweise wird ls | grep 200 verwendet, um die Ausgabe nach Ausführung des Befehls ls zu durchsuchen, unabhängig davon, ob sie 200 enthält

 

| awk '{print $ 1}' wird durch Leerzeichen geteilt, um den ersten Absatz des Textes anzuzeigen.
| wc -l gibt nur die Anzahl der Zeilen von Dateien oder Inhalten aus.
| grep -v schließt bestimmte Felder aus. Beispielsweise stellt cat test.log | grep "login" | grep -v "deviceType" fest, dass test.log Anmeldeinformationen enthält und das Feld deviceType
| grep -w nicht mit allen Wörtern übereinstimmt

jps (Java Virtual Machine Process Status Tool) ist ein von Java bereitgestellter Befehl zum Anzeigen der Pids aller aktuellen Java-Prozesse

Ich denke du magst

Origin blog.csdn.net/chenhao0568/article/details/108899849
Empfohlen
Rangfolge