您好,登錄后才能下訂單哦!
今天小編給大家分享一下Shell怎么監(jiān)控網(wǎng)站URL運行情況的相關知識點,內(nèi)容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
wget命令的參數(shù)非常多,至少也有數(shù)十個, 但是運維工作中常用的并不多,老男孩老師把最有用的列表如下。
wget命令 下載網(wǎng)頁或文件 --spider 模擬爬蟲的行為去訪問網(wǎng)站,但不會下載網(wǎng)頁 -q, --quiet 安靜的訪問,禁止輸出,類似-o /dev/null功能 -o, --output-file=FILE 記錄輸出到文件 -T, --timeout=SECONDS 訪問網(wǎng)站的超時時間 -t, --tries=NUMBER 當網(wǎng)站異常時重試網(wǎng)站的次數(shù)
實際監(jiān)控方法如下:利用wget命令返回值確定網(wǎng)站是否正常
[root@oldboy ~]# wget --spider -T 5 -q -t 2 www.oldboyedu.com [root@oldboy ~]# echo $? # 0
curl命令的參數(shù)比wget的參數(shù)還多,但運維中常用的參數(shù)也并不多,因此也是列表如下:
curl命令 訪問網(wǎng)站url -I/--head 顯示響應頭信息 -m/--max-time 訪問超時的時間 -o/--output 記錄訪問信息到文件 -s/--silent 沉默模式訪問,就是不輸出信息 -w/--write-out 以固定特殊的格式輸出,例如:%{http_code},輸出狀態(tài)碼
1、利用curl命令返回值確定網(wǎng)站是否正常
[root@oldboy ~]# curl -s -o /dev/null www.oldboyedu.com [root@oldboy ~]# echo $? 0
2、獲取命令執(zhí)行后的狀態(tài)碼(200表示正常)
[root@oldboy ~]# curl -I -m 5 -s -w "%{http_code}\n" -o /dev/null www.baidu.com 200
3 開發(fā)Shell腳本實現(xiàn)監(jiān)控指定的URL是否正常
解答: 方法1: #!/bin/sh function usage() { # echo $"usage:$0 url" exit 1 } function check_url() { # wget --spider -q -o /dev/null --tries=1 -T 5 $1 # #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 $* #
[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 ] # 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
如果網(wǎng)友能否讀懂本文,相信以后再寫監(jiān)控網(wǎng)站URL的腳本就會很輕松了。
以上就是“Shell怎么監(jiān)控網(wǎng)站URL運行情況”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業(yè)資訊頻道。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。