当前位置: 首页 > news >正文

windows下 自动检测网络状态,并重连至指定wifi的脚本

1、新建bat文件

@echo off
chcp 65001 >nul 2>&1
setlocal enabledelayedexpansionREM ===== 配置参数 ===== shell:startup
REM wifi_name  要连接的无线网名称
set wifi_name=wifiname
REM test_interval  循环检测时间
set test_interval=30	
REM wait_before_reconnect  wifi断开重连时间
set wait_before_reconnect=10
REM test_ip1  测试IP1
set test_ip1=223.5.5.5
REM test_ip2  测试IP2	
set test_ip2=baidu.com
REM log_file 日志路径
set log_file=D:\wifi\log\wifi.log
REM 确保日志目录存在
if not exist "D:\wifi\log\" mkdir "D:\wifi\log\"REM 记录脚本启动
call :log "========== WiFi 自动重连脚本启动 =========="
call :log "监控 WiFi: %wifi_name%"
call :log "检测间隔: %test_interval% 秒"
call :log "测试目标1: %test_ip1%"
call :log "测试目标2: %test_ip2%":main_loopREM 获取当前连接的 WiFi 名称for /f "tokens=2 delims=:" %%a in ('netsh wlan show interfaces ^| findstr /C:"SSID" ^| findstr /V "BSSID"') do (set current_wifi=%%aREM 去除前导空格set current_wifi=!current_wifi:~1!)REM 检查是否连接到目标 WiFiif "!current_wifi!"=="%wifi_name%" (call :log "已连接到 WiFi: %wifi_name%"call :check_network) else (call :log "未连接到 %wifi_name%, 当前连接: !current_wifi!"call :connect_wifi)REM 等待指定时间后再次检测call :log "等待 %test_interval% 秒后进行下次检测..."echo.timeout /t %test_interval% /nobreak >nulgoto :main_loop:check_networkREM 检查网络连通性call :log "开始检测网络连通性..."REM 测试第一个目标set ip1_ok=0for /l %%i in (1,1,3) do (ping -n 1 -w 1000 %test_ip1% >nul 2>&1if !errorlevel! equ 0 (set ip1_ok=1call :log "%test_ip1% 第 %%i 次 ping 成功"goto :test_ip2) else (call :log "%test_ip1% 第 %%i 次 ping 失败")):test_ip2REM 测试第二个目标set ip2_ok=0for /l %%i in (1,1,3) do (ping -n 1 -w 1000 %test_ip2% >nul 2>&1if !errorlevel! equ 0 (set ip2_ok=1call :log "%test_ip2% 第 %%i 次 ping 成功"goto :check_result) else (call :log "%test_ip2% 第 %%i 次 ping 失败")):check_resultREM 判断网络状态if !ip1_ok! equ 0 if !ip2_ok! equ 0 (call :log "=========================================="call :log "【警告】两个目标都无法 ping 通,网络异常!"call :log "=========================================="call :reconnect_wifi) else (call :log "✓ 网络正常,至少有一个目标可以 ping 通")goto :eof:reconnect_wifiREM 断开并重连 WiFicall :log "========== 开始重连操作 =========="call :log "正在断开 WiFi: %wifi_name%"netsh wlan disconnect >nul 2>&1call :log "等待 %wait_before_reconnect% 秒后重新连接..."timeout /t %wait_before_reconnect% /nobreak >nulcall :connect_wifigoto :eof:connect_wifiREM 连接到指定 WiFicall :log "尝试连接到 WiFi: %wifi_name%"netsh wlan connect name="%wifi_name%" >nul 2>&1if !errorlevel! equ 0 (call :log "连接命令执行成功,等待 5 秒确认连接状态..."timeout /t 5 /nobreak >nulREM 验证是否真正连接成功for /f "tokens=2 delims=:" %%a in ('netsh wlan show interfaces ^| findstr /C:"SSID" ^| findstr /V "BSSID"') do (set verify_wifi=%%aset verify_wifi=!verify_wifi:~1!)if "!verify_wifi!"=="%wifi_name%" (call :log "✓ 成功连接到 %wifi_name%") else (call :log "✗ 连接失败,当前连接: !verify_wifi!")) else (call :log "✗ 连接命令执行失败,错误代码: !errorlevel!")goto :eof:logREM 记录日志(带时间戳)set log_msg=%~1for /f "tokens=1-4 delims=/ " %%a in ('date /t') do set log_date=%%a-%%b-%%cfor /f "tokens=1-2 delims=: " %%a in ('time /t') do set log_time=%%a:%%bREM 获取完整时间(包含秒)set log_fulltime=%time:~0,8%echo [%log_date% %log_fulltime%] %log_msg%echo [%log_date% %log_fulltime%] %log_msg% >> "%log_file%"goto :eof

2、新建VBS文件

Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c ""D:\wifi\auto_connect_wifi.bat""", vbhide

3、设置策略组(开机脚本)

步骤1:打开组策略编辑器按 Win + R组合键,输入 gpedit.msc并按回车步骤2:配置开机脚本依次展开:计算机配置→ Windows 设置→ 脚本(启动/关机)双击右侧的"启动"选项步骤3:添加VBS脚本点击"添加"按钮浏览并选择你的VBS脚本文件点击"确定"保存设置

4、验证脚本是否成功

注意改为自己的wifi名称,设置好自己的脚本位置。监测间隔可以自己修改。

http://www.gsyq.cn/news/60313.html

相关文章:

  • map---显示地区地图
  • 2025年武汉优质的华新水泥生产厂家推荐榜单,华新水泥有哪些鑫俊熙层层把关品质优
  • 计算机视觉:pyqt5+yoloV5目标检测平台 python实战 torch 目标识别 大数据项目 目标跟踪(建议收藏)✅ - 指南
  • 2025年北京阅卷考试软件公司权威推荐榜单:自动阅卷软件/网上阅卷的软件/答题卡扫描源头公司精选
  • 背包的第 $k$ 优解
  • 2025深圳香港留学中介机构有哪些
  • 好用的库存管理系统盘点:橙子库存通——简洁实用、功能齐全,出入库管理更省心
  • 数据库风险监测系统:打造可审查、可调整、可溯源的教育数据库安全底座
  • 详细介绍:云计算概念及虚拟化
  • 使用Logstash实现PostgreSQL到Elasticsearch的数据摄取
  • 2025年封闭母线槽优质厂家权威推荐榜单:耐火母线槽/防水母线槽/空气型母线槽源头厂家精选
  • 2025年数据分类分级产品选型排名与深度解析:可视化、自适应、一键部署成关键能力
  • 官网发布|智感未来-聚链共生-2026中国激光雷达大会暨展览会/火热招展中!!!
  • 2025年三集一体除湿热泵机组选购指南及厂家推荐,目前三集一体除湿热泵机组直销厂家联系电话精选实力品牌
  • 2025年哈尔滨自闭症康复机构权威推荐榜单:孤独症/发育迟缓/发育落后源头机构精选
  • HarmonyOS自动化测试与持续集成实战指南 - 教程
  • 2025年11月审计报告事务所推荐:权威榜单与选择指南
  • 腾讯云TBDS与CDH迁移常见问题有哪些?建议由CDH迁移到CMP 7.13 平台(类Cloudera CDP,如华为鲲鹏 ARM 版)
  • 4A平台的新变化与国内典型厂商全景盘点
  • 2025年学生平板电脑制造厂权威推荐榜单:商务平板电脑/护眼大屏学习机/学生学习机源头工厂精选
  • 从被动防御到智能自治:安全运营中心(SOC)的演进之路
  • 2025年型材铝扣板批发厂家权威推荐榜单:吊顶铝扣板/集成铝扣板/墙面铝扣板源头厂家精选
  • 光催化全解水反应器源头厂家TOP5,品牌综合实力榜单发布
  • 有时休息时,身体会动一下
  • 2025年上海品牌营销推荐公司榜单途阔营销
  • 吴恩达深度学习课程三: 结构化机器学习项目 第一周:机器学习策略(一)正交化调优和评估指标
  • Mac与Kali主机间SSH连接故障排除:主机密钥变更的解决便捷的方案
  • 2025年11月高新技术企业认定公司推荐榜单与选择指南:权威评测与高性价比解决方案
  • 为什么软件反应特别慢?一次因版本架构错误导致的性能问题排查记录
  • Enefit - Kaggle项目