shell脚本检测网络是否畅通

Posted Oops!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本检测网络是否畅通相关的知识,希望对你有一定的参考价值。

shell初始化安装脚本执行时,需从网络上安装一些rpm包,所有需要先检测网络的畅通性, 

 

代码

 

#检测网络链接&&ftp上传数据  
function networkAndFtp()  
{  
    #超时时间  
    timeout=5  
      
    #目标网站  
    target=www.baidu.com  
  
    #获取响应状态码  
    ret_code=`curl -I -s --connect-timeout $timeout $target -w %{http_code} | tail -n1`  
  
    if [ "x$ret_code" = "x200" ]; then  
        #网络畅通  
    else  
        #网络不畅通  
    fi  
}  

 

实际脚本:

#判断网络是否配置正确,如果网络不通,退出安装程序
 
net_status=`curl -I -s --connect-timeout 5 www.baidu.com -w %{http_code} |tail -n1`
 
if [ $net_status -eq 200 ];then
      echo -e "\033[32m[ #########the network connecting is normal, installing now############ ]\033[0m"
      sleep 1
else 
     echo -e "\033[31m\033[01m[ ##########the network connecting is unstable, please check the network firstly ,then start the install again . 网络连接有问题,安装即将退出,请检查网络后再次安装##########  ]\033[0m"
     sleep 1
     exit 1
fi

 

以上是关于shell脚本检测网络是否畅通的主要内容,如果未能解决你的问题,请参考以下文章

一个shell的面试题

[shell]通过ping检测整个网段IP的网络状态脚本

想找RedHat Linux的shell脚本,用于检测服务器的IP、丢包率,当丢包率超过40%时Email告警,谢谢!

WyBox使用shell脚本检测io口是否正常

怎么用js脚本判断自动检测网络连接是不是正常?

代码片段:Shell脚本实现重复执行和多进程