서버 SSH 연결 장애 해결
3629 단어 버그 요약
배경
자동화 테스트 환경을 구축한 후에 유지보수를 위해 일부 환경의 웹 페이지는 임의로 지정한 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. [ ]