亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么使用Shell腳本程序監控網站URL是否正常

發布時間:2021-11-06 17:27:39 來源:億速云 閱讀:357 作者:柒染 欄目:建站服務器

這篇文章給大家介紹怎么使用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是否正常就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乌兰察布市| 弥勒县| 南昌市| 灵丘县| 白城市| 玛沁县| 正宁县| 弥勒县| 成武县| 新蔡县| 武安市| 达日县| 修文县| 鲁山县| 潞城市| 东丰县| 泊头市| 墨玉县| 炎陵县| 云梦县| 唐山市| 钟祥市| 山阴县| 汉中市| 丰县| 宜黄县| 泾阳县| 盘山县| 陆河县| 晴隆县| 皋兰县| 阿城市| 穆棱市| 嘉兴市| 长海县| 朔州市| 葵青区| 简阳市| 平邑县| 抚顺市| 清涧县|