工作站换了个网络不好的场地,远程桌面连接至少网络要保持相对稳定,因此需要个脚本定期检测计算机是否联网,如果断网就重连。
主进程start_ping,ping百度,如果没找到ping的延迟秒数(ms)返回错误,就运行进程run_process,否则运行run_loop,一直循环下去,每次循环间隔10s。
执行联网程序:需要修改name,这个name的wifi信息记录在注册表上,连接过应该就可以直接使用了。
netsh wlan show profiles # 查看wifi信息
netsh wlan connect name=eduroam # 执行联网
全部代码:
@echo off
:start_ping
ping -n 1 www.baidu.com | find "ms" >nul
if %errorlevel%==1 (
goto run_process
) else (
goto run_loop
)
:run_process
netsh wlan connect name=eduroam
echo Connecting...
TIMEOUT /T 10
ping -n 2 127.0.0.1 >nul
goto start_ping
:run_loop
echo Connected.
TIMEOUT /T 10
ping -n 2 127.0.0.1 >nul
goto start_ping
pause
复制以上代码到txt上,改后缀为.bat就能用了。