怎么使用Shell脚本程序监控网站URL是否正常
发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,这篇文章给大家介绍怎么使用Shell脚本程序监控网站URL是否正常,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。监控网站URL是否正常最常见的方法莫过于wget和curl 命令
千家信息网最后更新 2024年11月26日怎么使用Shell脚本程序监控网站URL是否正常
这篇文章给大家介绍怎么使用Shell脚本程序监控网站URL是否正常,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
监控网站URL是否正常最常见的方法莫过于wget和curl 命令 了,这两个 命令 都是非常强大的,强大到网友查看帮助都无从选择的地步了,今天呢,老男孩老师正好录制 Shell 编程实战课程。 |
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命令
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() { #<==检测URL函数。 wget --spider -q -o /dev/null --tries=1 -T 5 $1 #<==采用wget返回值方法,这里的$1就是函数传参。 #curl -s -o /dev/null $1 #<==采用curl返回值方法也是可以的。 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 ] #< ==采用获取状态码,并转为数字的方式判断,如果301认为正确也可以加上egrep过滤。 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
关于怎么使用Shell脚本程序监控网站URL是否正常就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
命令
网站
函数
参数
方法
监控
帮助
输出
脚本
信息
就是
常用
文件
状态
程序
强大
内容
实际
时间
更多
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
安卓软件开发慢
学生网络安全教育讲座报道
中山市模具公司erp软件开发
珠海市网络安全活动
数据库所含操作对象
数据库中照片存储类型
古交软件开发近期行情
戴尔MD1400连接两台服务器
平谷区综合网络技术服务大概费用
库存管理系统 数据库
水校高职扩招计算机网络技术
惠普服务器的管理软件
济南it招聘 软件开发
服务器cpu天梯图
学习计算机网络技术课程心得
专业是计算机网络技术
数据库查询时间
观网络安全视频心得
深度linux桌面软件开发
黑客是如何进攻服务器的
软件开发类是文科还是理科
数据库软件 功能
gitlab 同步数据库
公安网络安全及保密制度
宽带 服务器无响应
博学易知考试数据库
数据库技术的BI是什么
车辆品牌数据库
服务器安全性问题保障
国内外贸软件开发