shell實現URL檢測
阿新 • • 發佈:2018-02-27
調用 main url檢測 OS fun 裏的 shell Go roo
背景
在搭建好自動化測試環境後,為了維護的方面,一些環境中的web頁面需要判斷任意指定的URL是否存在異常。
實現
#!/bin/sh #首先定義幫助函數 function usage() { echo $"usage:$0 url" exit 1 } #定義檢測URL的函數 function check_url(){ wget --spider -q -o /dev/null --tries=1 -T 5 $1 if [ $? -eq 0 ] then echo "*$1 is yes." else echo "$1 is no." fi } #定義main函數,作為程序的入口 function main(){ if [ $# -ne 1 ] then usage fi check_url $1 } main $*
執行結果如下
[root@root]# sh check_url.sh www.sogo.com
www.sogo.com is yes.
優化
腳本雖然實現出來了,但是一不夠優雅,二展示不好看,三維護不方便,所以實現了以下的優化:
#!/bin/sh . /etc/init.d/funcitons #<===在這裏引入了系統的函數庫 function usage(){ echo $*usage:$0 url" exit 1 } function check_url(){ wget --spider -q -o /dev/null --tries=1 -T 5 $1 if [ $? -eq 0 ] then #這裏的action就是在腳本開頭引入系統函數庫後調用的 action "*$1 is yes." /bin/true else action "$1 is no." /bin/false fi} function main(){ if [ $# -ne 1 ] then usage fi check_url $1 } main $*
執行的效果如下:
[root@root]# sh check_url.sh www.sogo.com
www.sogo.com is yes. [確定]
[root@root]# sh check_url.sh www.soga.com
www.soga.com is no. [失敗]
shell實現URL檢測