bat--批处理--判断网络的连接状态

2025-04-30 03:40:21
推荐回答(4个)
回答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
以上方法可以间接地判断断开--连接---断开这种状态~ 至于是不是你的密码错误造成的原因不好说~

回答2:

下面代码能实现,系统要求WinXP以上
@echo off
:slz
wmic path Win32_PerfRawData_Tcpip_NetworkInterface Get name /Value|find /i "WAN [PPP_SLIP] Interface"&&echo 已连接||start /wait A.exe
ping -n 2 127.1>nul 2>nul
goto slz

回答3:

当“宽带连接”不停的断开--连接---断开....的时候,连接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
以上方法可以间接地判断断开--连接---断开这种状态~ 至于是不是你的密码错误造成的原因不好说~

回答4:

进入命令提示那里cmd 然后
ping ip地址空格-t 就可以连续测试连同性了 哈哈帮你找到了 感觉可以就把分给我吧