shell脚本检查网站状态
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本检查网站状态相关的知识,希望对你有一定的参考价值。
检查网站状态通常使用wget或curl工具,下面分别使用这二种工具来做写检查网站的脚本。(学习自老男孩shell编程)
命令行:
1、curl得到返回值200,表示正常
[[email protected] ~]# curl -o /dev/null -s --connect-timeout 5 -w ‘%{http_code}‘ www.baidu.com 200[[email protected] ~] |
2、wget得到0,表示正常
[[email protected] ~]# wget -T 5 -t 2 --spider www.baidu.com &>/dev/null [[email protected] ~]# echo $? 0 |
脚本:
1、culr
[[email protected] shell]# cat check_web1.sh #!/bin/bash # [ -f /etc/init.d/functions ] && . /etc/init.d/functions array=( http://www.china-cmd.org http://www.cmdmedia.cn http://www.icehtmc.com https://mail.cmdmedia.cn ) curl_ip() { CURL=$(curl -o /dev/null -s --connect-timeout 5 -w ‘%{http_code}‘ $1|egrep "200|302"|wc -l) return $CURL } main() { for n in ${array[*]} do curl_ip $n if [ $? -eq 1 ];then action "curl $n" /bin/true else action "curl $n" /bin/false sleep 3 CURL=$(curl_ip $n|egrep "200|302"|wc -l) if [ $CURL -eq 1 ];then action "Retry curl $n again" /bin/true else action "Retry curl $n again" /bin/false fi fi done } main |
图示:
2、wget
[[email protected] shell]# cat check_web2.sh #!/bin/bash # [ -f /etc/init.d/functions ] && . /etc/init.d/functions array=( http://www.china-cmd.org http://www.cmdmedia.cn http://www.icehtmc.com https://mail.cmdmedia.cn ) curl_ip() { wget -T 5 -t 2 --spider $1 &>/dev/null return $? } main() { for n in ${array[*]} do curl_ip $n if [ $? -eq 0 ];then action "curl $n" /bin/true else action "curl $n" /bin/false fi done } main |
图示:
学习自:
老男孩shell
本文出自 “赵东伟的博客” 博客,请务必保留此出处http://zhaodongwei.blog.51cto.com/4233742/1899145
以上是关于shell脚本检查网站状态的主要内容,如果未能解决你的问题,请参考以下文章
Linux之shell脚本实战统计 Linux 进程相关数量信息
如何从 shell/shell 脚本获取 sqlplus 命令的输出状态?
shell脚本启动和停止apache 检查apache的运行状态 如果apache启动了就让它停止 ,如果停止了就启动apach