ubuntu检测网络是否断开并执行shell脚本

本文介绍了如何使用Shell脚本来检测树莓派的网络连接状态。当网络断开时,脚本会自动重启网络服务。通过ping百度进行网络检查,若不通则执行重启操作。此脚本适用于通过宝塔面板定时任务执行,确保网络连接稳定性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

因为Sham用树莓派直接通过拨号连接网络,但是不知道什么原因,有的时候会自己断网而且不会重新自己连接,所以Sham从网上找了1个脚本,通过定时执行来检测时候联网,如果没有,则重启网络服务。

因为Sham不懂shell,所以只能大概猜测逻辑:

首先是通过ping百度网来判断是否联网,ping 3次,通过返回的值来判断,如果不通的话,就执行重启网络服务,如果通的话,就输出网络没问题就结束。

因为是通过宝塔面板的计划任务来定期执行的,所以脚本里是直接exit退出的,如果是直接执行的话,可以把exit 0换成sleep 60 这样来通过等待固定时间来在此执行

while true
do 
    ping -c 3 www.baidu.com > /dev/null 2>&1
    if [ $? -eq 0 ];then
    echo "network ok"
    else
    echo "no network"
    sudo systemctl restart NetworkManager.service
    fi
    exit 0
done

 一个在前往码农道路上走走停停的行政文员

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值