Shell 查看内存条信息
Windows 下可以用 PowerShell 的 WMI 命令查看物理内存条信息,Linux 下可以用 dmidecode 查看物理内存插槽、容量、频率、品牌、型号和序列号,不需要拆机。
🔹 Windows PowerShell
查看内存条概览
powershell
Get-CimInstance Win32_PhysicalMemory | Select-Object BankLabel, @{Name="Capacity(GB)";Expression={[math]::round($_.Capacity/1GB,1)}}, Speed, Manufacturer, PartNumber输出示例:
BankLabel Capacity(GB) Speed Manufacturer PartNumber
--------- ------------ ----- ------------ ---------
A1_Node0_Channel0_Dimm0 16 2133 Micron 36ASF2G72PZ-2G1A2
A1_Node0_Channel1_Dimm0 16 2133 Micron 36ASF2G72PZ-2G1A2
A1_Node1_Channel0_Dimm0 16 2133 Micron 36ASF2G72PZ-2G1A2
A1_Node1_Channel1_Dimm0 16 2133 Micron 36ASF2G72PZ-2G1A2查看详细横向表格形式信息(含中文表头 + 序列号)
powershell
Get-CimInstance Win32_PhysicalMemory | ForEach-Object {
[PSCustomObject]@{
"插槽位置" = $_.BankLabel
"容量 (GB)" = [math]::round($_.Capacity / 1GB, 2)
"频率 (MHz)" = $_.Speed
"制造商/品牌" = $_.Manufacturer.Trim()
"型号/料号" = $_.PartNumber.Trim()
"序列号" = $_.SerialNumber.Trim()
}
} | Format-Table -AutoSize输出示例:
插槽位置 容量 (GB) 频率 (MHz) 制造商/品牌 型号/料号 序列号
-------- --------- ---------- ----------- --------- ------
A1_Node0_Channel0_Dimm0 16 2133 Micron 36ASF2G72PZ-2G1A2 0FC9EDAE
A1_Node0_Channel1_Dimm0 16 2133 Micron 36ASF2G72PZ-2G1A2 0F8D6EF5
A1_Node1_Channel0_Dimm0 16 2133 Micron 36ASF2G72PZ-2G1A2 0F90A1A6
A1_Node1_Channel1_Dimm0 16 2133 Micron 36ASF2G72PZ-2G1A2 0F8D6D56PowerShell 字段说明
| 字段 | 说明 |
|---|---|
BankLabel | 插槽位置,可据此判断哪些槽位插了内存 |
Capacity | 容量,单位 Byte,除以 1GB 换算 |
Speed | 频率,单位 MHz |
Manufacturer | 制造商/品牌 |
PartNumber | 型号料号,据此可查具体规格 |
SerialNumber | 序列号,每条内存唯一 |
最终效果
执行命令后即可看到每根内存条的详细参数,包括插槽位置、容量、频率、品牌等。


🔹 Linux Bash
安装工具
dmidecode 通常需要 root 权限才能读取 DMI/SMBIOS 信息。
bash
# Debian / Ubuntu
sudo apt install dmidecode
# Arch Linux
sudo pacman -S dmidecode
# Alpine Linux
sudo apk add dmidecode提示
带中文表头的横向表格会用到 column 命令。如果系统提示 column: command not found,Debian / Ubuntu 可安装 bsdextrautils,Arch / Alpine 可安装 util-linux。
查看内存条原始信息
bash
sudo dmidecode -t memory查看关键字段
bash
sudo dmidecode -t memory | grep -E "Locator:|Bank Locator:|Size:|Speed:|Manufacturer:|Part Number:|Serial Number:"查看不带品牌名的横向表格
这个版本不读取和展示 Manufacturer,只保留插槽位置、容量、频率、型号/料号和序列号,适合快速核对内存条规格。
bash
sudo dmidecode -t memory | awk '
BEGIN {
OFS="\t"
print "插槽位置", "容量", "频率", "型号/料号", "序列号"
print "--------", "----", "----", "---------", "------"
}
function print_mem() {
if (size != "" && size !~ /No Module/) {
print slot, size, speed, part, serial
}
}
/Memory Device$/ {
print_mem()
slot=""; size=""; speed=""; part=""; serial=""
}
/^[[:space:]]*Locator:/ {
sub(/^[[:space:]]*Locator:[[:space:]]*/, "")
slot=$0
}
/^[[:space:]]*Size:/ {
sub(/^[[:space:]]*Size:[[:space:]]*/, "")
size=$0
}
/^[[:space:]]*Speed:/ && $0 !~ /Configured/ {
sub(/^[[:space:]]*Speed:[[:space:]]*/, "")
speed=$0
}
/^[[:space:]]*Part Number:/ {
sub(/^[[:space:]]*Part Number:[[:space:]]*/, "")
part=$0
}
/^[[:space:]]*Serial Number:/ {
sub(/^[[:space:]]*Serial Number:[[:space:]]*/, "")
serial=$0
}
END {
print_mem()
}' | column -t -s $'\t'查看带品牌名的横向表格
这个版本会参考 fastfetch 的常见内存厂商码映射,把 0x80AD 这类 DMI/SMBIOS 原始厂商码显示成 SK Hynix、Samsung、Micron 等可读品牌名;不认识的值会原样显示。
bash
sudo dmidecode -t memory | awk '
BEGIN {
OFS="\t"
print "插槽位置", "容量", "频率", "制造商/品牌", "型号/料号", "序列号"
print "--------", "----", "----", "-----------", "---------", "------"
}
function trim(s) {
sub(/^[[:space:]]+/, "", s)
sub(/[[:space:]]+$/, "", s)
return s
}
function decode_mfg(mfg, id) {
id = toupper(trim(mfg))
if (id == "0X017A") return "Apacer"
if (id == "0X0198") return "Kingston"
if (id == "0X029E") return "Corsair"
if (id == "0X04CB") return "A-DATA"
if (id == "0X04CD") return "G-Skill"
if (id == "0X059B" || id == "0X859B") return "Crucial"
if (id == "0X00CE" || id == "0X80CE" || id == "0XCE00") return "Samsung"
if (id == "0X014F") return "Transcend"
if (id == "0X2C00" || id == "0X802C") return "Micron"
if (id == "0XAD00" || id == "0X80AD") return "SK Hynix"
if (id == "0X5105" || id == "0X8551") return "Qimonda"
if (id == "0X02FE") return "Elpida"
if (id == "0X0467") return "Ramaxel"
return trim(mfg)
}
function print_mem() {
if (size != "" && size !~ /No Module/) {
print slot, size, speed, mfg, part, serial
}
}
/Memory Device$/ {
print_mem()
slot=""; size=""; speed=""; mfg=""; part=""; serial=""
}
/^[[:space:]]*Locator:/ {
sub(/^[[:space:]]*Locator:[[:space:]]*/, "")
slot=$0
}
/^[[:space:]]*Size:/ {
sub(/^[[:space:]]*Size:[[:space:]]*/, "")
size=$0
}
/^[[:space:]]*Speed:/ && $0 !~ /Configured/ {
sub(/^[[:space:]]*Speed:[[:space:]]*/, "")
speed=$0
}
/^[[:space:]]*Manufacturer:/ {
sub(/^[[:space:]]*Manufacturer:[[:space:]]*/, "")
mfg=decode_mfg($0)
}
/^[[:space:]]*Part Number:/ {
sub(/^[[:space:]]*Part Number:[[:space:]]*/, "")
part=$0
}
/^[[:space:]]*Serial Number:/ {
sub(/^[[:space:]]*Serial Number:[[:space:]]*/, "")
serial=$0
}
END {
print_mem()
}' | column -t -s $'\t'Linux Bash 最终效果

Linux Bash 字段说明
| 字段 | 说明 |
|---|---|
Locator | 内存插槽位置 |
Size | 内存容量 |
Speed | 内存频率 |
Manufacturer | 制造商/品牌 |
Part Number | 型号料号 |
Serial Number | 序列号 |