网站内容更新监控(一下命令wget确定网站是否正常curl命令的参数非常多)
优采云 发布时间: 2022-02-22 07:14网站内容更新监控(一下命令wget确定网站是否正常curl命令的参数非常多)
今天小编就给大家分享一下Shell如何监控网站 URL操作的相关知识点。内容详细,逻辑清晰。相信大部分人还是太了解这方面的知识了,所以把这篇文章分享给大家文章供大家参考,希望大家看完这篇文章有所收获,一起来了解一下吧。
wget 命令
wget命令的参数非常多,至少有几十个,但在运维工作中常用的并不多。老男孩老师列出了最有用的如下。
wget命令 下载网页或文件
--spider 模拟爬虫的行为去访问网站,但不会下载网页
-q, --quiet 安静的访问,禁止输出,类似-o /dev/null功能
-o, --output-file=FILE 记录输出到文件
-T, --timeout=SECONDS 访问网站的超时时间
-t, --tries=NUMBER 当网站异常时重试网站的次数
实际监控方法如下:使用wget命令的返回值判断网站是否正常
[root@oldboy ~]# wget --spider -T 5 -q -t 2 www.oldboyedu.com [root@oldboy ~]# echo $? #
0
卷曲命令
curl命令的参数比wget的要多,但是运维常用的参数并不多,所以列举如下:
curl命令 访问网站url
-I/--head 显示响应头信息
-m/--max-time 访问超时的时间
-o/--output 记录访问信息到文件
-s/--silent 沉默模式访问,就是不输出信息
-w/--write-out 以固定特殊的格式输出,例如:%{http_code},输出状态码
实际监控方式
1、使用curl命令的返回值判断网站是否正常
[root@oldboy ~]# curl -s -o /dev/null www.oldboyedu.com [root@oldboy ~]# echo $? 0
2、获取命令执行后的状态码(200表示正常)
[root@oldboy ~]# curl -I -m 5 -s -w "%{http_code}\n" -o /dev/null www.baidu.com 200
3 开发Shell脚本监控指定的URL是否正常
解答:
方法1:
#!/bin/sh function usage() { #
echo $"usage:$0 url" exit 1
}
function check_url() { #
wget --spider -q -o /dev/null --tries=1 -T 5 $1 #
#curl -s -o /dev/null $1 #
if [ $? -eq 0 ]
then echo "$1 is yes." exit 0
else echo "$1 is fail." exit 1
fi }
function main() { #
if [ $# -ne 1 ] #
then usage
fi check_url $1 #
}
main $* #
实践结果
[root@oldboy ~]# sh checkurl.sh www.oldboyedu.com www.oldboyedu.com is ok
[root@oldboy ~]# sh checkurl.sh www.baidu.com www.baidu.com is ok
[root@oldboy ~]# sh checkurl.sh 10.0.0.8 10.0.0.8 is fail
方法2:
[root@oldboy ~]# cat checkurl1.sh #!/bin/bash ############################################################## # File Name: checkurl.sh # Version: V1.0 # Author: oldboy # Organization: www.oldboyedu.com # Created Time : 2018-06-07 18:29:19 ############################################################## usage(){
echo "Usage:$0 url" exit 1
}
checkurl(){
local num=`curl -I -m 5 -s -w "%{http_code}\n" -o /dev/null|grep 200|wc -l`
if [ $num -eq 1 ] #
then echo "$1 is ok" else echo "$1 is fail" fi }
main(){
if [ $# -ne 1 ]
then usage
fi checkurl $1 }
main $*
实践结果
[root@oldboy ~]# sh checkurl.sh www.oldboyedu.com www.oldboyedu.com is ok
[root@oldboy ~]# sh checkurl.sh www.baidu.com www.baidu.com is ok
[root@oldboy ~]# sh checkurl.sh 10.0.0.8 10.0.0.8 is fail
如果网友们能看懂这篇文章,相信以后写个脚本监控网站URL会很方便。
以上就是文章文章《Shell如何监控网站URL操作》的全部内容,感谢阅读!相信大家看完这篇文章会有很多收获。小编每天都会为大家更新不同的知识。想了解更多知识,请关注易速云行业资讯频道。