Windows 自动连接wifi的bat批处理脚本

您所在的位置:网站首页 bat打开软件并登录 Windows 自动连接wifi的bat批处理脚本

Windows 自动连接wifi的bat批处理脚本

2024-03-26 15:16| 来源: 网络整理| 查看: 265

                                                                      Windows 自动连接wifi脚本

一、简述

          记-使用bat脚本实现自动连接wifi(wifi是已经连接过的)。

          使用场景1:需要连接设备的wifi热点进行调试设备并获取设备的相关信息,设备是会定时重启的,此时需要自动连接上设备的wifi,但发现系统自带的自动连接热点功能不靠谱,所以需要使用bat批处理脚本进行定时检测是否已经连接上wifi并自动重连设备wifi。

          使用场景2:测试仪器wifi热点的稳定行,wifi连接和断开wifi测试。

          使用场景3:需要保持PC上位机与设备的wifi连接

         注1:该脚本使用前提是已经连接过WiFi,即电脑已经保存了要连接的热点的相关信息(包括密码,没有连接过的需要自己添加配置文件)

         注2:有的系统需要以管理员权限执行该脚本,此时日志默认保存目录不是当前路径,可以直接指定set log_file=D:\wifi.log

测试脚本打包:外链:https://wwa.lanzoui.com/b0c9qo3vg 密码:8lq8

二、测试脚本

@echo off rem @file:auto_connect_wifi.bat rem @author:Genven_Liang rem @date:2021.02.05 rem @note:for auto connect wifi rem 要连接的wifi名称 set wifi_name=mywifi set log_file=wifi.log set try_cnt=1 rem 如果有参数1,就将参数1指定为wifi名称 if [%1] == [] (echo default_wifi>nul) || ( set wifi_name=%1 ) echo [%date% %time%] Start connect wifi:%wifi_name% >>%log_file% rem 主循环 :mainloop (netsh WLAN show interfaces | findStr %wifi_name% >nul && ( echo already connected. )) || ( set /a try_cnt+=1 echo [%date% %time%] try to connect...[%try_cnt%] echo [%date% %time%] try to connect...[%try_cnt%] >>%log_file% netsh wlan connect ssid=%wifi_name% name=%wifi_name% >>%log_file% ) choice /t 5 /d y /n >nul goto mainloop

三、测试效果

四、总结

4.1 @echo off 表示关闭回显,即不显示执行的命令本身,只显示执行命令的输出信息。

4.2 rem 开头的是注释

4.3 %date%表示当前日期,%time%表示当前时间

4.4 获取附近wifi信息:netsh wlan show networks mode=bssid

4.5 获取当前连接的wifi名称:netsh WLAN show interfaces

可以使用findStr进一步提取信息

4.6 连接指定wifi:netsh wlan connect ssid=mywifi name=mywifi   (需要是已经连接过的,如果没有连接过的,需要添加一份xml配置)

4.7 断开当前WiFi:netsh wlan disconnect

4.8 简单实现5秒延时:choice /t 5 /d y /n >nul

还可以使用timeout /t 3 /nobreak

还可以使用ping -n 5 www.xxx.com

4.9 查看已连接的wifi:netsh wlan show profiles

4.10 查看mywifi的相关信息:netsh wlan show profile name=mywifi key=clear

=============== 以下回复 aiya_maya123 =============

连接未连接过的wifi,添加xml配置:

1、查看已经连接的wifi netsh wlan show profiles 2、导出wifi名称为mywifi的配置文件(随便自己找个连接过的wifi就行了), 保存路径是C:\Users\Liang\Desktop,文件名格式为"Wlan-wifi名字"; key=clear表示密码用明文输出,用于下个步骤修改 netsh wlan export profile name="mywifi" folder=C:\Users\Liang\Desktop interface="Wlan" key=clear 3、修改配置文件,修改配置文件名为Wlan-mywifi2.xml 字符串转十六进制:打开浏览器按F12(或右键--检查)进入开发者模式,输入以下代码并按回车就得到十六进制的结果 function stringtoHex(str) { var hexStr = ""; for (var i = 0; i < str.length; i++) { if ("" == hexStr) hexStr = str.charCodeAt(i).toString(16); else hexStr += str.charCodeAt(i).toString(16); } return hexStr.toUpperCase(); }; console.log(stringtoHex("mywifi2"));//mywifi2就是要连接的wifi名称 4、将添加wifi配置文件 netsh wlan add profile filename="C:\Users\Liang\Desktop\Wlan-mywifi2.xml" 5、查看配置是否添加成功 netsh wlan show profiles | findStr mywifi2 6、连接wifi(记得先开启热点mywifi2) netsh wlan connect ssid=mywifi2 name=mywifi2 附:删除配置 netsh wlan delete profile filename="mywifi2"

Wlan-mywifi2.xml文件:外链:https://wwa.lanzoui.com/b0c9qo3vg 密码:8lq8

mywifi2 6D797769666932 mywifi2 ESS manual WPA2PSK AES false passPhrase false 87654321 false 740396315

 

结果: (测试环境win10 64bit系统笔记本电脑)

 附:删除配置 netsh wlan delete profile filename="mywifi2"

字符串转十六进制(也可以直接在线搜索字符串转十六进制,也可以使用相关的软件winhex,ultraedit、等等......)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3