Chinaunix首页 | 论坛 | 博客
  • 博客访问: 704834
  • 博文数量: 98
  • 博客积分: 3145
  • 博客等级: 中校
  • 技术积分: 1902
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-15 12:52
文章分类
文章存档

2021年(1)

2020年(1)

2016年(8)

2015年(3)

2014年(1)

2013年(5)

2012年(4)

2011年(9)

2010年(12)

2009年(42)

2008年(12)

我的朋友

分类:

2011-01-18 11:36:04

下面是一个检查网站状态的脚本,分别检查网页状态和网页连接时间。还可以根据自己的需要进行扩展,curl
write-out非常强大
#!/bin/sh
weblist=/opt/sbin/weblist.txt //定义要检查网站的列表,格式为“"
for list in `cat $weblist|grep -E -v "#|^$"` //从列表中找出网站名
do
httpcode=`curl -o /dev/null -s -w %{http_code} "$list"` //网页状态,正常为200
httptime=`curl -o /dev/null -s -w "time_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" "$list"|grep time_total|awk -F ":" '{print $2*1000}'`//网页连接总时间,由于bash不支持浮点运算,所以这里将运行时间放大了1000倍
if [ $httpcode = 200 ]||[ $httpcode = 301 ]||[ $httpcode = 302 ]||[ $httpcode = 403 ]||[ $httpcode = 401 ]//匹配状态
then
echo "$list is checked ok!"
else
//报警,这里采用的是调用接口,短信或邮件报警,由于内部使用,所以未列出

fi
if [ $httptime -ge 10000 ] //超时检查,如果大于10秒就报警,这个需要根据自己的需要定义
then

//报警,这里采用的是调用接口,短信或邮件报警,由于内部使用,所以未列出
else
echo "$list is connect ok!"
fi
done

阅读(2338) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-03-07 14:33:52

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com