shell 脚本获取服务器应用状态:
shell脚本方法:
declare -i count
declare -i total
curlit()
{
curl -o /dev/null -s -m 10 --connect-timeout 30 -w %{http_code} "http://172.16.48.141:8080/html/login/Login.jsp"
#上面的30是连接超时时间,若访问url的HTTP服务超过30s仍然没有正确响应200头代码,则判断为无法访问。
}
#等待10m
total=10
count=0
#获取返回的状态码
httpstatus=`curlit`
echo httpstatus is $httpstatus
#如果是200 直接跳过
until [[ $httpstatus = 200 ]];do
count=$count+1
echo until httpstatus is $httpstatus
echo "$total -eq $count"
#10m后跳出循环 服务没有起来
if [ $total -eq $count ]; then
echo "total is $total,count is $count ,timeout 10 for login html failed!!!"
exit 1
else
echo "$count for until !!!"
fi
#等待1m
sleep 1m
#再次获取状态码
httpstatus=`curlit`
done;
关于curl 的详细使用教程,可以百度 google,呵呵!