监控网站是否正常?wget命令的参数用途和列表

优采云 发布时间: 2021-06-06 02:14

  监控网站是否正常?wget命令的参数用途和列表

  前言

  最常用的监控网站URL 是否正常的方法是wget 和curl 命令。这两个命令都非常强大,强大到你看帮助都无法选择。

  但我们还是要花时间去研究,研究会事半功倍。

  wget

  wget命令参数很多,至少有几十个,但运维工作中常用的并不多。最有用的列表如下:

  命令参数使用说明

  wget

  下载网页或文件

  –蜘蛛

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

  -q, --quiet

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

  -o, --output-file=FILE

  记录输出到文件

  -T, --timeout=SECONDS

  访问网站超时

  -t, –tries=NUMBER

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

  wget 监控方法示例

  使用wget命令的返回值判断网站是否正常

  1

2

3

  # wget --spider -T 5 -q -t 2 www.sobaigu.com

# echo $? //利用返回值确定网站是否正常。

 0

  卷曲

  curl命令参数比wget多,但是运维常用的参数不多,所以列举如下:

  命令参数使用说明

  卷曲命令

  访问网站url

  -I, --head

  显示响应头信息

  -m, --max-time

  访问超时时间

  -o, --output

  记录访问信息到文件

  -s, --silent

  静默模式访问,即不输出任何信息

  -w, --write-out

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

  curl监控方法示例使用curl命令返回值判断网站是否正常

  1

2

3

4

  # curl -s -o /dev/null www.sobaiguu.com

# echo $?

 0

  获取命令执行后的状态码(200表示正常)

  1

2

3

  # curl -I -m 5 -s -w "%{http_code}\n" -o /dev/null www.sobaigu.com

 200

  一个监控指定网址是否正常的shell脚本

  1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

  #!/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返回值方法也是可以的

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

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线