怎么使用Shell脚本程序监控网站URL是否正常
发表于:2025-02-09 作者:千家信息网编辑
千家信息网最后更新 2025年02月09日,这篇文章给大家介绍怎么使用Shell脚本程序监控网站URL是否正常,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。监控网站URL是否正常最常见的方法莫过于wget和curl 命令
千家信息网最后更新 2025年02月09日怎么使用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安全错误
数据库的锁怎样保障安全
无锡数据库
cnc控制系统软件开发
陈禹国家网络安全
用友底层数据库操作
数据库域名怎么写
iosweb服务器
串口服务器接线
消逝的光芒2网络连接不到服务器
甘政法网络安全学院毕业就业难吗
云数据库通过什么进行远程访问
数据库sql课程安排
软件开发规避风险
群晖服务器内存去哪了
我的世界服务器卡飞行
邢台网络存储服务器价格
服务器租用安全意识的重要性
博赛网络技术
川大 网络安全 招生
检察院网络技术员
计算机网络技术简答大全
传奇藏宝图数据库代号
美国新上市网络安全股票
陆军网络安全宣传标语
福州城区联排联调中心网络安全
数据库备份数据位置
首都网络安全日佟力强
大数据 数据库 设计
数据库入门 pdf
富士GX打印服务器下载
中经网统计数据库登录账号