轻松查看WiFi密码的神奇脚本,让你忘记密码也不再是问题

发布时间:2024年01月13日

说在前面

🎈本文介绍了一个便捷的脚本,可以帮助你获取电脑中保存的所有Wi-Fi网络的密码。不再需要担心忘记Wi-Fi密码或手动查找密码的麻烦,只需运行脚本即可一键获取。

一、引言

互联网的普及让我们离不开Wi-Fi网络,但忘记密码时常发生。在当今的数字时代,Wi-Fi密码几乎成为了我们连接互联网的"通行证"。然而,我们常常会面临一个尴尬的问题:当我们需要在新的设备上连接同一个Wi-Fi网络时,我们却无法回忆起密码。幸运的是,我们有一个神奇的脚本可以帮助我们轻松地获取保存在电脑中的Wi-Fi密码。

二、脚本工作原理

这个脚本基于命令行操作,通过执行特定指令来获取Wi-Fi配置文件的名称和密码信息。它利用操作系统提供的命令行工具,能够访问并读取存储在电脑中的Wi-Fi配置文件,从而获取相应的密码信息。

三、准备工作

在运行脚本之前,我们需要进行一些准备工作。首先,我们需要确保命令行编码设置为UTF-8,以便支持显示中文字符。这可以通过在脚本中执行chcp 65001命令来实现。

四、脚本编写

1、引入child_process 模块

引入 Node.js 内置的 child_process 模块中的 execSync 函数,用于执行命令行指令。

const { execSync } = require("child_process");

2、编码设置为 UTF-8

通过 execSync 函数执行命令行指令 chcp 65001,将命令行编码设置为 UTF-8,以便支持显示中文字符。

 execSync("chcp 65001");

3、获取所有 Wi-Fi 配置

执行命令行指令 netsh wlan show profiles,获取所有 Wi-Fi 配置文件的名称信息,并将其转换为字符串格式。然后,使用正则表达式匹配出每个 Wi-Fi 配置文件的名称,并将其存储在 profileNames 数组中

const profilesInfo = execSync("netsh wlan show profiles").toString();
  const profileNames = profilesInfo
    .match(/All User Profile\s*:\s*(.*)/g)
    .map((s) => s.split(":")[1].trim());

4、输出 Wi-Fi 配置

遍历 profileNames 数组中的每个 Wi-Fi 配置文件的名称,并根据名称执行命令行指令 netsh wlan show profile name=“” key=clear,获取对应的密码信息。然后,使用正则表达式匹配出密码信息,并将其存储在 password 变量中。最后,将 Wi-Fi 名称和密码信息一起输出到控制台上。如果某个 Wi-Fi 没有设置密码,则输出“无密码”。

 for (const name of profileNames) {
    const passwordInfo = execSync(
      `netsh wlan show profile name="${name}" key=clear`
    );
    const passwordMatch = passwordInfo
      .toString()
      .match(/Key Content\s*:\s*(.*)/);
    const password = passwordMatch ? passwordMatch[1].trim() : "无密码";
    console.log(`${name}: ${password}`);
  }

5、完整脚本代码

const { execSync } = require("child_process");

function getAllWifiInfo() {
  // 设置命令行编码为UTF-8,以支持显示中文字符
  execSync("chcp 65001");

  // 获取所有Wi-Fi配置文件的名称
  const profilesInfo = execSync("netsh wlan show profiles").toString();
  const profileNames = profilesInfo
    .match(/All User Profile\s*:\s*(.*)/g)
    .map((s) => s.split(":")[1].trim());

  // 获取每个Wi-Fi的密码并输出
  for (const name of profileNames) {
    const passwordInfo = execSync(
      `netsh wlan show profile name="${name}" key=clear`
    );
    const passwordMatch = passwordInfo
      .toString()
      .match(/Key Content\s*:\s*(.*)/);
    const password = passwordMatch ? passwordMatch[1].trim() : "无密码";
    console.log(`${name}: ${password}`);
  }
}

五、脚本使用

1、插件安装

npm install -g jyeontu

2、查看wifi密码

jyeontu wifi

六、结束语

这个神奇的脚本为我们解决了忘记Wi-Fi密码的尴尬问题。通过简单的命令行操作,我们可以轻松地获取保存在电脑中的Wi-Fi密码。希望这篇文章对你有所帮助,鼓励你尝试使用该脚本来解决类似的问题。享受无忧的Wi-Fi连接吧!

源码

Gitee

该工具的源码也已经开源,有兴趣的同学可以到Gitee上查看:https://gitee.com/zheng_yongtao/node-scripting-tool/tree/master/src/jyeontu

欢迎star~

公众号

关注公众号『前端也能这么有趣』,发送jyeontu即可获取源码。

公众号

关注公众号『前端也能这么有趣』,获取更多有趣内容。

说在后面

🎉 这里是 JYeontu,现在是一名前端工程师,有空会刷刷算法题,平时喜欢打羽毛球 🏸 ,平时也喜欢写些东西,既为自己记录 📋,也希望可以对大家有那么一丢丢的帮助,写的不好望多多谅解 🙇,写错的地方望指出,定会认真改进 😊,偶尔也会在自己的公众号『前端也能这么有趣』发一些比较有趣的文章,有兴趣的也可以关注下。在此谢谢大家的支持,我们下文再见 🙌。

文章来源:https://blog.csdn.net/Twinkle_sone/article/details/135577277
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。