Linux-shell脚本判断服务器网络是否可以上网

介绍

在编写shell脚本时,有的功能需要确保服务器网络是可以上网才可以往下执行,那么此时就需要有个函数来判断服务器网络状态

我们可以通过curl来访问 www.baidu.com,从而判断服务器网络状态是否可以畅通的

网络状态判断

#!/bin/bash

#检测网络链接畅通
function network()
{
    #超时时间
    local timeout=1

    #目标网站
    local target=www.baidu.com

    #获取响应状态码
    local ret_code=`curl -I -s --connect-timeout ${timeout} ${target} -w %{http_code} | tail -n1`

    if [ "x$ret_code" = "x200" ]; then
        #网络畅通
        return 1
    else
        #网络不畅通
        return 0
    fi

    return 0
}

network
if [ $? -eq 0 ];then
    echo "网络不畅通,请检查网络设置!"
    exit -1
fi

echo "网络畅通,你可以上网冲浪!"

exit 0

网络状态正常的脚本执行结果:
网络畅通,你可以上网冲浪!

网络状态不正常的脚本执行结果:
网络不畅通,请检查网络设置!

【腾讯云】轻量 2核2G4M,首年65元

阿里云限时活动-云数据库 RDS MySQL  1核2G配置 1.88/月 速抢

本文由乐趣区整理发布,转载请注明出处,谢谢。

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据