监控url是否正常脚本

1.用wget命令监控

wget命令

下载网页或文件

--spider

模拟爬虫的行为去访问网站,但不会下载网页

-q,    --quiet

安静的访问,禁止输出,类似-o /dev/null功能

-o,   --output-file=FILE

记录输出到文件

-T, --timeout=SECONDS

访问网站的超时时间

-t,   --tries=NUMBER

当网站异常时重试网站的次数

#!/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 $*            #<==这里的$*就是把命令行接收的所有参数作为函数参数传给函数内部,常用手法。

sh *.sh www.baidu.com

2. 用url监控

curl命令

访问网站url

-I/--head

显示响应头信息

-m/--max-time <seconds>

访问超时的时间

-o/--output <file>

记录访问信息到文件

-s/--silent

沉默模式访问,就是不输出信息

-w/--write-out <format>

以固定特殊的格式输出,例如:%{http_code},输出状态码

#!/bin/bash
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 $*
sh *.sh www.baidu.com
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值