使用bat脚本读取当前设备wifi密码
演示
仅显示
@echo off
color 2f
mode con: cols=40 lines=15
title WiFi密码查询
echo 正在查询结果
for /f "tokens=2* delims=:" %%i in ('netsh wlan show profiles') do (
for /f "tokens=* delims= " %%a in ("%%i") do (
for /f "tokens=3* delims= " %%d in ('netsh wlan show profiles key^=clear name^="%%a"^| findstr "关键内容" ') do (
echo "%%a"密码为:【%%d】
)
)
)
echo 任意键退出查询
pause>nul
输出文本
@echo off
color 2f
mode con: cols=40 lines=15
title WiFi密码查询
echo 正在查询结果
setlocal enabledelayedexpansion
for /f "tokens=2* delims=:" %%i in ('netsh wlan show profiles') do (
set str=%%i
for /f "tokens=3* delims= " %%d in ('netsh wlan show profiles key^=clear name^="!str:~1!"^| findstr "关键内容"') do (
echo "!str:~1!"密码为:【%%d】
echo "!str:~1!"密码为:【%%d】>>WiFi.txt
)
)
echo 保存在脚本所在目录的WiFi.txt文件中
echo 任意键退出查询
pause>nul
原理
大概是第一次for循环去读取wifi名称
第二次循环的目的是去除第一次循环获取的多余的一个空格(感觉写的不好。。。又不知道咋截取,干脆用循环去分割吧,如果有更好的写法欢迎在回复里提出。)
第三次是获取对应wifi名字的信息,然后用findstr去找关键内容那一行,如果找到了就分割一下(老分割了。。。)写出密码
没有密码就拉倒。。。
绿色无残留,安全无捆绑
无须管理员权限运行(似乎是的)
无须额外配置,一键获取全部以保存的wifi名及其密码
食用方法:
复制代码,粘贴到记事本里,按照ANSI格式保存
注!最好不要用第三方编辑器。。。。
win10默认的保存语言是utf-8,bat只支持ANSI,中文编码错误保存会乱码
共有 0 条评论