批处理怎么判断网络状态并执行相应操作

2024-12-04 07:28:15
推荐回答(1个)
回答1:

当“宽带连接”不停的断开--连接---断开....的时候,连接DNS服务器肯定是:通---断---通 的现象,于是转换为用检测DNS的通或断来判断这种状态~
步骤:
先要知道你们当地电信或网通的DNS服务器地址(根据你的网络来选择)
然后检测DNS服务器的连通状态~
代码:
@echo off&ping -n 1 DNS服务器地址 >nul&if not errorlevel 1 (
ping -n 1 DNS服务器地址 >nul&if errorlevel 1 start a.exe) else (
start a.exe)
%0

如果机器是使用固定的IP和DNS地址,则可以自动获取它的DNS,不需要取查了,
代码是:
netsh -c interface ip dump >%temp%\interface.txt
for /f "skip=12 tokens=5 " %%i in (%temp%\interface.txt) do set dns=%%i & goto start
:start
ping -n 1 %dns% >nul&if not errorlevel 1 (
ping -n 1 %dns% >nul&if errorlevel 1 start a.exe) else (
start a.exe)
goto start
以上方法可以间接地判断断开--连接---断开这种状态~