大家好,今天我遇到一个需求,想要快速查看电脑中保存的WiFi密码。于是,我写了一个批处理脚本,通过Windows自带的命令来获取这些密码。如果你也有类似的需求,下面我将为大家介绍如何使用这个批处理脚本来获取已保存的WiFi密码。
在开始之前,请确保你的操作系统是Windows 7或更高版本,并且具有管理员权限。因为需要通过命令行查询WiFi信息,而这类操作通常需要管理员权限。
下面是完整的批处理脚本代码。你可以直接将其复制到一个新的 .bat 文件中,运行即可:
@echo off & setlocal EnableDelayedExpansion
chcp 65001 >nul
echo 正在获取已保存的WiFi账户和密码...
echo ==================================
for /f "tokens=2 delims=:" %%i in ('netsh wlan show profiles ^| findstr "All User Profile"') do (
set "ssid=%%i"
set "ssid=!ssid:~1!"
set "password="
for /f "tokens=2 delims=:" %%j in ('netsh wlan show profile name^="!ssid!" key^=clear ^| findstr /C:"Key Content"') do (
set "password=%%j"
set "password=!password:~1!"
)
set "output=!ssid! "
echo !output:~0,25! !password!
)
echo ==================================
echo 所有WiFi密码已显示完毕。
pause@echo off:关闭命令行显示,避免显示额外的命令信息。setlocal EnableDelayedExpansion:启用延迟变量扩展,使得在循环中能够动态获取和更新变量值。chcp 65001 >nul:设置命令提示符使用UTF-8字符集,以确保能够正确显示中文字符。for /f "tokens=2 delims=:" %%i in ('netsh wlan show profiles ^| findstr "All User Profile"') do (:这部分命令会获取计算机上保存的所有WiFi网络名称(SSID)。for /f "tokens=2 delims=:" %%j in ('netsh wlan show profile name^="!ssid!" key^=clear ^| findstr /C:"Key Content"') do (:接下来,通过netsh wlan show profile命令获取每个WiFi网络的详细信息,并提取出密码(Key Content)。echo !output:~0,25! !password!:将每个WiFi的名称和对应的密码输出到命令行中,格式化显示。pause:脚本执行完毕后,暂停命令行窗口,便于查看结果。.bat 扩展名(例如 get_wifi_passwords.bat)。通过上述批处理脚本,你可以快速获取Windows系统中保存的WiFi密码。这个方法既简单又实用,适用于一些紧急情况,比如忘记了WiFi密码需要重新连接时。希望这篇文章对你有所帮助,赶紧试试吧!
如果有任何问题,欢迎留言讨论!