服务器SSH连不通故障排查

背景

在搭建好自动化测试环境后,为了维护的方面,一些环境中的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.                     [失败]

你可能感兴趣的:(Bug总结)