cmd读取电脑硬件序列号实现方式

在Windows命令提示符(cmd)中,可以通过多种方式读取电脑硬件序列号。以下是几种常用的实现方式:

图片[1]_cmd读取电脑硬件序列号实现方式_知途无界

1. 使用WMIC命令(推荐)

获取系统序列号(主板序列号)

wmic bios get serialnumber

获取CPU序列号

wmic cpu get processorid

获取硬盘序列号

wmic diskdrive get serialnumber

获取MAC地址

wmic nic get macaddress

获取所有硬件信息概览

wmic computersystem get name,model,manufacturer,systemtype

2. 使用PowerShell命令(在CMD中调用)

获取系统序列号

powershell "Get-WmiObject -Class Win32_BIOS | Select-Object SerialNumber"

获取更详细的硬件信息

powershell "Get-WmiObject -Class Win32_ComputerSystem | Format-List Name,Model,Manufacturer,Domain,TotalPhysicalMemory"

3. 使用系统内置命令

获取BIOS版本和序列号

systeminfo | findstr /B /C:"BIOS Version" /C:"System Manufacturer" /C:"System Model" /C:"System Serial Number"

获取磁盘信息

vol

4. 批量获取多种硬件序列号的脚本

创建一个批处理文件 get_hardware_info.bat

@echo off
chcp 65001 >nul
echo ========================================
echo           电脑硬件序列号信息
echo ========================================
echo.

echo [系统信息]
echo ----------------------------------------
for /f "skip=1 tokens=1,2 delims=:" %%a in ('systeminfo ^| findstr /B /C:"系统制造商" /C:"系统型号" /C:"系统序列号" /C:"BIOS版本"') do (
    echo %%a: %%b
)

echo.
echo [主板序列号]
echo ----------------------------------------
wmic bios get serialnumber /value | findstr "SerialNumber"

echo.
echo [CPU信息]
echo ----------------------------------------
wmic cpu get name,processorid /value | findstr "Name ProcessorId"

echo.
echo [硬盘序列号]
echo ----------------------------------------
wmic diskdrive get model,serialnumber /value | findstr "Model SerialNumber"

echo.
echo [网卡MAC地址]
echo ----------------------------------------
wmic nic where "netconnectionstatus=2" get macaddress,name /value | findstr "MACAddress Name"

echo.
echo [内存信息]
echo ----------------------------------------
wmic memorychip get capacity,partnumber,speed /value | findstr "Capacity PartNumber Speed"

echo.
echo ========================================
echo 信息获取完成,按任意键退出...
pause >nul

5. 创建硬件信息查询工具

创建一个更专业的批处理脚本 hardware_info.cmd

@echo off
setlocal enabledelayedexpansion

:: 设置控制台颜色
color 0A
title 硬件序列号查询工具

:menu
cls
echo.
echo ##################################################
echo #              硬件序列号查询工具                #
echo ##################################################
echo.
echo  1. 查看系统序列号
echo  2. 查看CPU序列号  
echo  3. 查看硬盘序列号
echo  4. 查看MAC地址
echo  5. 查看完整硬件信息
echo  6. 导出到文件
echo  0. 退出
echo.
set /p choice=请选择操作 (0-6): 

if "%choice%"=="1" goto system_sn
if "%choice%"=="2" goto cpu_sn  
if "%choice%"=="3" goto disk_sn
if "%choice%"=="4" goto mac_addr
if "%choice%"=="5" goto full_info
if "%choice%"=="6" goto export_file
if "%choice%"=="0" goto exit
goto menu

:system_sn
cls
echo ========================================
echo           系统序列号信息
echo ========================================
echo.
echo 主板序列号:
wmic bios get serialnumber
echo.
echo 系统型号:
wmic computersystem get model
echo.
echo 系统制造商:
wmic computersystem get manufacturer
pause
goto menu

:cpu_sn
cls
echo ========================================
echo           CPU序列号信息
echo ========================================
echo.
echo CPU型号:
wmic cpu get name
echo.
echo 处理器ID:
wmic cpu get processorid
echo.
echo 核心数:
wmic cpu get numberofcores
echo.
echo 线程数:
wmic cpu get numberoflogicalprocessors
pause
goto menu

:disk_sn
cls
echo ========================================
echo           硬盘序列号信息
echo ========================================
echo.
echo 硬盘型号和序列号:
wmic diskdrive get model,serialnumber
echo.
echo 分区信息:
wmic logicaldisk get deviceid,volumename,filesystem,freespace,size
pause
goto menu

:mac_addr
cls
echo ========================================
echo           MAC地址信息
echo ========================================
echo.
echo 活动网卡MAC地址:
wmic nic where "netconnectionstatus=2" get macaddress,name
echo.
echo 所有网卡信息:
wmic nic get macaddress,name,netconnectionstatus
pause
goto menu

:full_info
cls
echo ========================================
echo           完整硬件信息
echo ========================================
echo.
echo 正在收集硬件信息,请稍候...
echo.
echo [系统信息]
systeminfo | findstr /B /C:"主机名" /C:"OS 名称" /C:"OS 版本" /C:"系统制造商" /C:"系统型号" /C:"系统类型" /C:"处理器" /C:"物理内存总量"

echo.
echo [主板信息]
wmic baseboard get product,manufacturer,version,serialnumber

echo.
echo [BIOS信息] 
wmic bios get version,serialnumber,releasedate

echo.
echo [CPU信息]
wmic cpu get name,numberofcores,numberoflogicalprocessors,processorid,maxclockspeed

echo.
echo [内存信息]
wmic memorychip get capacity,manufacturer,partnumber,speed,serialnumber

echo.
echo [硬盘信息]
wmic diskdrive get model,size,serialnumber,interfaceType

echo.
echo [显卡信息]
wmic path win32_videocontroller get name,driverversion

echo.
echo [网卡信息]
wmic nic get name,macaddress,netconnectionstatus,speed

echo.
echo [显示器信息]
wmic desktopmonitor get name,screenheight,screenwidth
pause
goto menu

:export_file
cls
echo ========================================
echo           导出硬件信息到文件
echo ========================================
echo.
set /p filename=请输入文件名 (不含扩展名): 

if "%filename%"=="" set filename=hardware_info_%date:~0,4%%date:~5,2%%date:~8,2%

set filepath=%~dp0%filename%.txt

echo 正在导出硬件信息到: %filepath%
echo.

echo ======================================== >> "%filepath%"
echo           电脑硬件序列号信息 >> "%filepath%"
echo ======================================== >> "%filepath%"
echo 导出时间: %date% %time% >> "%filepath%"
echo. >> "%filepath%"

echo [系统信息] >> "%filepath%"
echo ---------------------------------------- >> "%filepath%"
systeminfo | findstr /B /C:"系统制造商" /C:"系统型号" /C:"系统序列号" /C:"BIOS版本" >> "%filepath%"
echo. >> "%filepath%"

echo [主板序列号] >> "%filepath%"
echo ---------------------------------------- >> "%filepath%"
wmic bios get serialnumber /value | findstr "SerialNumber" >> "%filepath%"
echo. >> "%filepath%"

echo [CPU信息] >> "%filepath%"
echo ---------------------------------------- >> "%filepath%"
wmic cpu get name,processorid /value | findstr "Name ProcessorId" >> "%filepath%"
echo. >> "%filepath%"

echo [硬盘序列号] >> "%filepath%"
echo ---------------------------------------- >> "%filepath%"
wmic diskdrive get model,serialnumber /value | findstr "Model SerialNumber" >> "%filepath%"
echo. >> "%filepath%"

echo [网卡MAC地址] >> "%filepath%"
echo ---------------------------------------- >> "%filepath%"
wmic nic where "netconnectionstatus=2" get macaddress,name /value | findstr "MACAddress Name" >> "%filepath%"
echo. >> "%filepath%"

echo 导出完成!文件保存在: %filepath%
echo.
pause
goto menu

:exit
cls
echo 感谢使用硬件序列号查询工具!
timeout /t 2 >nul
exit

6. 快速查询单行命令

如果需要快速在CMD中执行单个查询,可以使用这些单行命令:

:: 一键获取所有主要序列号
wmic bios get serialnumber & wmic cpu get processorid & wmic diskdrive get serialnumber & wmic nic get macaddress

:: 保存到剪贴板(需要Windows 10+)
powershell "Get-WmiObject -Class Win32_BIOS | Select-Object SerialNumber" | clip

:: 格式化输出到文件
wmic /output:C:\hardware_info.txt bios get serialnumber && wmic /output:C:\hardware_info.txt cpu get processorid && type C:\hardware_info.txt

注意事项

  1. 权限要求​:某些命令需要管理员权限才能获取完整信息
  2. 编码问题​:如果遇到中文乱码,可以使用 chcp 65001 切换到UTF-8编码
  3. 虚拟化环境​:在虚拟机中,某些序列号可能是虚拟的
  4. 安全性​:硬件序列号属于敏感信息,使用时请注意信息安全

这些方法可以帮助你在CMD环境中快速获取各种硬件的序列号信息,适用于系统管理、资产盘点、故障排查等场景。

© 版权声明
THE END
喜欢就点个赞,支持一下吧!
点赞37 分享
评论 抢沙发
头像
欢迎您留下评论!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容