2020-10-02Linux shell avalia se o url pode ser acessado e reinicia se houver um problema ao visitar o site regularmente, então não me preocupo em verificar a falha

#网站守护
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 modo silencioso, a barra de progresso e a mensagem de erro não são exibidas.
-m max-time, o tempo máximo para esta solicitação. 5 segundos.
-I curl apenas julga os parâmetros das informações do cabeçalho de resposta
-L permite jump
| grep Se uma determinada string está incluída na saída de um comando. Por exemplo, ls | grep 200 é usado para pesquisar a saída após a execução do comando ls, se ele contém 200

 

| awk '{print $ 1}' é dividido por espaços em branco para exibir o primeiro parágrafo do texto
| wc -l apenas exibe o número de linhas de arquivos ou conteúdo
| grep -v exclui certos campos. Por exemplo, cat test.log | grep "login" | grep -v "deviceType" descobre que test.log contém informações de login e não tem o campo deviceType
| grep -w corresponde a todas as palavras

jps (Java Virtual Machine Process Status Tool) é um comando fornecido por java para exibir os pids de todos os processos java atuais

Acho que você gosta

Origin blog.csdn.net/chenhao0568/article/details/108899849
Recomendado
Clasificación