十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

用CMD命令查询电脑硬件信息与WiFi密码,无需第三方软件

用CMD命令查询电脑硬件信息与WiFi密码,无需第三方软件 你肯定遇到过这种情况朋友找你问某台电脑的配置你不想装鲁大师或者是自己忘了 WiFi 密码又不想进路由器后台翻再或者是笔记本要送去售后急需一串序列号来登记。其实这些乱七八糟的需求Windows 自带的 cmd 窗口全都能搞定不需要装任何第三方软件也不用联网下工具。这篇我把自己这些年摸出来的命令行套路从查硬盘序列号、笔记本电脑序列号、主板型号到看整机配置、找回 WiFi 密码一次性整理清楚每一步都附上真实输出截图级别的说明照着敲就能用。1. 查询前的准备工作1.1 管理员权限很多命令的半条命cmd 分两种打开方式一种普通权限一种管理员权限。绝大多数查询命令普通权限就能跑但有一小部分比如清 DNS 缓存、修改网络配置、查看某些受保护的硬件信息普通权限会直接报“拒绝访问”。所以我建议你直接养成习惯用管理员身份打开 cmd省得来回折腾。打开方法很简单按键盘上的Win键输入cmd然后在搜索结果里右键点击“命令提示符”选择“以管理员身份运行”。如果你用的是 Windows 11还可以直接按Win X在弹出的快捷菜单里选“终端(管理员)”效果一样。这里有个小细节Windows 11 默认的“终端”其实是 PowerShell 的界面但你照样敲cmd回车就能切到传统 cmd 环境或者反正命令通用直接在 PowerShell 里跑也行。我不太纠结这个因为下面要用的 wmic、netsh 这两组命令在 cmd 和 PowerShell 里都认。注意本文所有命令都是在你自己电脑上、查你自己设备的信息合法合规。别拿这些命令去搞别人的设备守住底线工具本身没毛病。1.2 认识 cmd 的核心查询逻辑cmd 里查信息有个万金油工具叫wmic全称 Windows Management Instrumentation Command-line你可以把它理解成 Windows 系统的一个“内部档案室”里面记着电脑各个硬件的身份证信息。你只需要按照“wmic 硬件类别 get 字段名”的格式去问它就能给你吐出来。这个工具的语法相当固定比如查硬盘序列号命令是wmic diskdrive get serialnumber拆开看就是wmic调用工具diskdrive指定查硬盘get serialnumber表示只要序列号这一个字段。你把它类比成查户口——先找人diskdrive再问要哪个信息serialnumber思路一下就清楚了对吧。后面所有硬件查询基本都是这个套路所以我把这个底层逻辑放在最前面说比给你堆命令列表管用得多。你掌握了语法规则就算哪天忘了具体命令随手wmic diskdrive get /?看一下可用的字段列表也能自己摸索出来。2. 硬件信息查询序列号、型号、配置一次摸清2.1 硬盘序列号保修和验机的关键硬盘序列号相当于硬盘的“身份证号”每块盘出厂时都是唯一的。这个信息在送修、核对翻新盘、或者给资产管理员登记设备时特别有用。查它只需要一行命令wmic diskdrive get serialnumber输出结果一般是一串字母和数字的组合比如WD-WCC6Y4RU2V8S这样的格式。注意这里查的是物理硬盘的序列号不是你在“此电脑”里看到的 C 盘、D 盘卷标。区分方法特别简单磁盘管理器里看到的是“卷”而 diskdrive 对应的是“物理磁盘”。如果你想一次性把硬盘的型号、接口类型、大小也一起查出来命令可以升级成这样wmic diskdrive get model,serialnumber,interfacetype,sizemodel是硬盘型号interfacetype会显示是 SATA 还是 NVMesize是容量单位是字节看着那一长串数字别慌。比如一块 512GB 的固态它会显示512110190592左右自己除以 1024 的三次方就是熟悉的 GB 数了。我这几年帮人验二手笔记本第一步永远是先跑这条命令再对着官方资料查序列号。如果发现硬盘序列号和品牌出厂记录对不上那这块盘八成被换过可以直接砍价或者直接不买。2.2 笔记本序列号和 BIOS 信息笔记本的序列号通常印在机器底部的贴纸上但日子一久贴纸磨损、或者你自己动手换过外壳就找不到原始序列号了。这时候 cmd 能直接从 BIOS 里把信息拽出来wmic bios get serialnumber哪怕你把底部的贴纸撕了只要 BIOS 芯片没坏这条命令永远能给你准确的答案。不管是联系售后、查询保修状态还是报修时登记这串字符都是第一凭证。如果你连品牌带具体型号都想知道可以再补一条wmic csproduct get name,version,uuidcsproduct查的是系统整机信息name一般会显示电脑的产品系列version是版本号uuid是这台设备在主板层面的唯一标识。这个组合在重装系统后激活 Windows 遇到问题、或者需要向 IT 部门提供设备标识时特别好用。我个人还有一个习惯收到一台新笔记本第一件事就是把这几个信息截图存档。以后不管是出二手还是报修翻出截图就行不用再开机进系统查一遍。2.3 主板型号与厂商识别台式机用户需要格外关注主板信息因为它决定了你能升级什么 CPU、支持多大频率的内存、有没有第二个 M.2 插槽。cmd 查主板也很简单wmic baseboard get manufacturer,product,versionmanufacturer会显示主板厂商比如Micro-Star International Co., Ltd.是微星ASUSTeK COMPUTER INC.是华硕product是主板的具体型号比如MAG B660M MORTAR WIFI迫击炮这种version一般是版本号对普通用户来说参考意义不大但售后时可能会问到。插一句我的实操体会主板型号查出来之后建议直接去官网搜对应型号的支持页面把 BIOS 更新、驱动下载这些页面收藏起来。因为你一旦知道主板精确型号所有驱动问题就都迎刃而解了不用再瞎猜。另外“电脑型号”和“主板型号”是两个容易混淆的概念。上面第二条命令查的是整机型号比如HP EliteBook 840 G3这一条查的是主板的物理型号。对品牌机来说整机型号和主板型号往往数字对不上别因为对不上就觉得自己机器有问题——笔记本的主板大多是定制版型号和零售市场卖的不一样再正常不过。2.4 整机配置查询CPU、内存、显卡每次别人发来“帮我看看这电脑配置能不能玩某某游戏”这种消息我就用下面这几条命令不用装任何软件就能把配置摸个底朝天。CPU 信息wmic cpu get name,numberofcores,numberoflogicalprocessors这条会返回 CPU 的完整型号比如Intel(R) Core(TM) i7-12700H、物理核心数和逻辑处理器数。物理核心是实实在在的核逻辑处理器是开了超线程之后系统看到的数量一般逻辑数是物理数的两倍。内存条信息wmic memorychip get capacity,speed,manufacturercapacity是单根内存的容量字节单位speed是频率manufacturer是内存颗粒厂商。如果机器里插了两根内存这里会显示两行记录。想看内存总容量就用wmic computersystem get totalphysicalmemory同样是以字节为单位看着一大串别懵。显卡信息相对特殊wmic 里没有直接的videocontroller查询需要这么写:wmic path win32_videocontroller get name,driverversionpath win32_videocontroller是指定查 WMI 类中的显卡控制器name是显卡型号driverversion是当前驱动的版本号。这里有个坑如果你的电脑是双显卡核显独显这条命令会输出两行分别对应核显和独显。你要看独显就找 NVIDIA 或者 AMD 开头的那一行。把这些命令综合起来一台电脑的配置单就齐了。你甚至可以写成一个批处理文件一键输出所有硬件信息到文本后面我会详细说这个玩法。2.5 wmic 退役后的替代方案这里必须提醒一句微软已经正式宣布 wmic 在新版 Windows 里逐步弃用。Windows 11 24H2 之后系统默认不再预装 wmic你敲wmic可能会提示“not recognized as an internal or external command”。好消息是这些查询需求都有替代方案最简单的是用 PowerShell 的Get-CimInstance命令。举例对比一下查硬盘序列号Get-CimInstance Win32_DiskDrive | Select-Object SerialNumber查主板型号Get-CimInstance Win32_BaseBoard | Select-Object Manufacturer,Product查整机型号Get-CimInstance Win32_ComputerSystemProduct | Select-Object Name,Version语法不难理解Get-CimInstance的Win32_磁盘类别对应 wmic 里的diskdrive、baseboard、csproduct后面的Select-Object就是“要哪些字段”基本可以无缝替换。所以如果你新电脑跑不了 wmic别慌把上面这几条 PowerShell 版本记住就行。补充如果你就喜欢 cmd 的界面也可以去官网手动下载 wmic 组件放回系统目录但我不建议这么折腾。既然微软已经明确方向是 PowerShell早点习惯新命令更省事。3. WiFi 密码查询把遗忘的密码找回来3.1 查看本机连接过的所有 WiFiWiFi 密码这需求太常见了。最常见的场景是家里来客人问 WiFi 密码你想了半天想不起来或者新买了路由器想查询旧路由器的 WiFi 密码做参考。其实 Windows 早就把连接成功的 WiFi 密码默认保存下来了只是一般人不知道去哪里看。cmd 里查看本机连接过的所有 WiFi 名称netsh wlan show profiles这条命令的产出是一个列表显示“用户配置文件”里所有保存过的 WiFi 名称。比如你之前在咖啡馆连过、在酒店连过、在朋友家连过只要保存过配置这里都会记着。netsh是一个网络相关的命令行工具wlan表示无线网络show profiles是列出所有配置文件。你可以把它理解成打开了一个“WiFi 通讯录”里面存着这台电脑认识的所有无线网络。有一点要说清楚这里能查到的只是这台电脑曾经连接并保存过密码的 WiFi不是扫周围信号的那是netsh wlan show networks只能看到没密码的热点名称。所以别指望拿它去获取陌生人路由器的密码别越界。3.2 导出特定 WiFi 的明文密码找到了 WiFi 名称下一步就是把密码明文抠出来netsh wlan show profile nameWiFi名称 keyclear把命令里的WiFi名称替换成上一步查出来的实际名称然后看输出里“安全设置”那一栏有一行写着“关键内容”冒号后面的就是密码明文。比如你查到列表里有TP-LINK_5G_802那么命令就写成netsh wlan show profile nameTP-LINK_5G_802 keyclear输出的后半部分你会看到安全设置 身份验证 : WPA2-Personal 密码 : 12345678 关键内容 : abc12345那个关键内容后面的abc12345就是 WiFi 密码而你平时在系统设置里看到的“查看 WiFi 密码”选项底层也是调用了同样的逻辑。这里有个关键点必须要说如果你开的是普通权限 cmd大概率会报错“请求的操作需要提升”。解决方式就是我开头强调的用管理员身份打开 cmd。这一步做好了整个查询过程才会通畅。3.3 当前 WiFi 信息的实时查询如果你只是想知道“当前正连着哪个 WiFi”不用去翻配置文件列表直接一条命令netsh wlan show interfaces输出内容很丰富SSID是当前连接的网络名称信号是百分比接收速率和传输速率是当前协商速率身份验证是加密方式。我调试网络问题的时候最喜欢看这里——如果信号显示 90% 但速度很慢那多半不是信号问题而是路由器带宽或者干扰问题。还有一个场景我觉得特别实用家里无线网络老是断你怀疑是信号不好。跑一下这条命令看信号的百分比变化如果数值在 70% 附近反复横跳说明你正好站在信号临界区换个位置或者加个路由器做 Mesh 组网就能解决。很多网络“玄学”问题其实一行命令就能找到方向。另外netsh wlan show interfaces里的物理地址MAC信息也偶尔有用比如你在公司网络要做 MAC 白名单绑定直接照抄就行。顺带一提如果某个 WiFi 连不上你先跑这条命令确认一下自己是不是真的连上了——有时候你以为连上了实际是手机热点在偷跑流量。4. 常见问题与排查技巧4.1 命令提示“不是内部或外部命令”的迷思很多人在 cmd 里敲命令突然遇到系统提示wmic 不是内部或外部命令也不是可运行的程序或批处理文件第一反应是“电脑坏了”或者“命令打错了”。其实大概率就两个原因第一你用的系统版本比较高wmic 被移除或默认不启用。这时候用我前面提到的 PowerShell 命令替代即可。第二你的PATH环境变量有问题导致系统找不到 wmic.exe 的路径。这种概率较低但重装系统或者“精简版”系统容易出现。排查方法很直接先试试where wmic看系统能不能定位到 wmic 的位置。如果提示找不到就是第一条原因如果能定位到但还是跑不了大概率是你的用户权限不够用管理员身份重开 cmd 再试。4.2 查询代码提示“拒绝访问”怎么办之前说了管理员权限是很多命令的“通行证”。如果你敲那些需要高权限的命令出现拒绝访问的报错比如netsh wlan show profile namexxx keyclear弹出的不是密码而是一句“请求的操作需要提升”。这时候别想着加什么参数绕过——就是权限不够解决方式只有一条关掉当前窗口重新用“以管理员身份运行”打开 cmd。Windows 的安全机制就是这样的高权限命令必须显示提升权限来跑这是保护系统不被恶意脚本任意篡改的基础设计。所以别嫌麻烦右键一下的事换来的是正常查询的体验。这里分享一个我的习惯动作需要查询硬件序列号或者 WiFi 密码时直接Win X然后 A 键管理员终端所有操作一气呵成。不用每次输入密码点一遍 UAC 弹窗——反正 UAC 就是为了让你思考一下确认是你本人在操作。4.3 输出结果乱码或中文显示异常有段时间我特别喜欢用英文版 Windows结果发现 cmd 输出的中文全变成了乱码。这不是命令的问题是代码页编码没对上。Windows 默认用 GBK代码页 936显示中文如果你系统区域设置被改过或者终端默认代码页不对就乱码。解决办法有两种一种是临时切换代码页chcp 65001这是切到 UTF-8 编码。多数情况下乱码问题到这里就解决了。另一种是一劳永逸在命令行窗口标题栏上右键选“属性”在“字体”选项卡里把字体改成“等距字体 Consolas”或者在区域设置里把系统 Locale 改成“Beta: 使用 Unicode UTF-8 提供全球语言支持”。我实测下来改完后乱码概率低很多但 Beta 选项在某些老软件上可能引发新的编码问题自己权衡。4.4 查询结果显示“No instance(s) available”如果硬件查询返回No instance(s) available先别怀疑命令先检查硬件本身。我遇到过一次装了一根内存条但没插紧系统完全没识别到wmic memorychip自然就查不到东西。重新插拔之后立刻恢复正常。还有一种情况出现在虚拟机环境虚拟机的wmic csproduct返回的是虚拟机的 UUID而不是实体硬件的信息这是正常的。比如你用 VMware 装了个测试系统查到的序列号是 VMware 分配的不是宿主机真实硬件信息。如果你在虚拟机里折腾这些命令输出结果“对不上号”别慌不是命令错了是环境本身就虚拟化。4.5 进阶写个批处理一键导出整机配置单前面讲的都是单条命令每查一个信息敲一次稍微有点碎。我习惯把这些命令攒成一个批处理文件双击就自动把所有信息导出到一个文本文档里日常用非常方便。用记事本新建一个文件输入以下内容然后保存为硬件信息查询.bat注意扩展名是.bat而不是.txtecho off chcp 65001 nul echo echo 电脑硬件信息收集脚本 echo echo 正在收集硬盘序列号... wmic diskdrive get model,serialnumber,size echo. echo 正在收集主板信息... wmic baseboard get manufacturer,product,version echo. echo 正在收集整机型号... wmic csproduct get name,version,uuid echo. echo 正在收集CPU信息... wmic cpu get name,numberofcores echo. echo 正在收集内存信息... wmic memorychip get capacity,speed,manufacturer echo. echo 正在收集WiFi配置文件... netsh wlan show profiles echo. echo 收集完成请截图或记录以上信息。 pause保存后右键“以管理员身份运行”所有信息会依次显示在窗口中。你还可以在echo off后面加一行重定向把输出直接存成文本文件wmic diskdrive get model,serialnumber,size 配置单.txt wmic baseboard get manufacturer,product,version 配置单.txt是覆盖写入是追加写入。这样你跑完之后目录下会生成一个配置单.txt想发多少份就发多少份特别适合有大量设备要盘点的人。4.6 这些命令能做什么不能做什么最后说点边界感的问题。网上经常能看到标题党说“cmd 十秒破解 WiFi 密码”点进去一看全是诱导下载工具的套路。用 cmd 查 WiFi 密码本质上只能查这台电脑已经连接过、并保存了密码的网络这是系统记账本不是万能钥匙。想破解别人路由器那属于另一码事既不合法也不道德别碰。cmd 能做的合法查询其实已经非常强大了硬件资产盘点、远程协助前了解配置、网络故障排查、忘记密码找回这些都是它的主战场。把这些正当场景用熟日常效率能提一个量级。工具是死的用在哪怎么用全看人。我自己用这些命令这么多年最大的心得就是别背命令去理解思路。wmic 硬件类别 get 字段是一套netsh wlan 动作 对象是一套记着框架细节用到的时候查就行。真到了记不住的时候命令后面加/?系统就给你列出所有可用参数比任何教程都全。
返回列表