本文目录导读:

根据你的系统类型,获取系统版本信息的方法如下:
Windows 系统
PowerShell
# 获取完整版本信息 Get-CimInstance Win32_OperatingSystem | Select-Object Caption, Version, BuildNumber # 或使用更简单的命令 (Get-WmiObject Win32_OperatingSystem).Version # 获取 Windows 产品名称 (Get-WmiObject Win32_OperatingSystem).Caption
命令提示符 (CMD)
:: 查看版本号 ver :: 查看详细系统信息 systeminfo | findstr /B /C:"OS Name" /C:"OS Version" :: 使用 wmic wmic os get Caption,Version,BuildNumber
VBScript
Set objOS = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2:Win32_OperatingSystem=@")
WScript.Echo "版本: " & objOS.Version
WScript.Echo "构建号: " & objOS.BuildNumber
WScript.Echo "名称: " & objOS.Caption
Linux 系统
Bash Shell
# 查看内核版本 uname -a # 或 uname -r # 查看发行版信息 cat /etc/os-release # 或 cat /etc/*release # 查看详细版本(适用于 Debian/Ubuntu) lsb_release -a # 查看 Red Hat/CentOS 版本 cat /etc/redhat-release # 一行命令获取主要信息 echo "内核: $(uname -r), 发行版: $(cat /etc/os-release | grep PRETTY_NAME | cut -d'"' -f2)"
Python 脚本(跨平台)
import platform
import sys
def get_system_version():
system = platform.system()
version_info = {
"system": system,
"release": platform.release(),
"version": platform.version(),
"machine": platform.machine(),
"processor": platform.processor(),
}
if system == "Windows":
version_info["windows_version"] = sys.getwindowsversion()
elif system == "Linux":
# 获取发行版信息
import distro
version_info["distro"] = distro.name(pretty=True)
version_info["distro_version"] = distro.version()
return version_info
info = get_system_version()
for key, value in info.items():
print(f"{key}: {value}")
Node.js
const os = require('os');
console.log('操作系统:', os.type());
console.log('平台:', os.platform());
console.log('发行版:', os.release());
console.log('架构:', os.arch());
console.log('主机名:', os.hostname());
console.log('CPU:', os.cpus()[0].model);
macOS 系统
Bash
# 查看版本 sw_vers # 获取具体版本号 sw_vers -productVersion # 获取系统名称 sw_vers -productName # 查看内核版本 uname -a
Python 版本检测
import platform
# macOS 版本
print(f"macOS 版本: {platform.mac_ver()[0]}")
print(f"系统: {platform.system()} {platform.release()}")
跨平台通用脚本
Python 3(最通用)
import platform
import sys
def get_os_info():
info = {
'system': platform.system(),
'node': platform.node(),
'release': platform.release(),
'version': platform.version(),
'machine': platform.machine(),
'processor': platform.processor(),
}
if platform.system() == 'Windows':
win_ver = sys.getwindowsversion()
info['windows_major'] = win_ver.major
info['windows_minor'] = win_ver.minor
info['windows_build'] = win_ver.build
info['windows_service_pack'] = win_ver.service_pack
elif platform.system() == 'Linux':
try:
import distro
info['distro'] = distro.name(pretty=True)
info['distro_version'] = distro.version()
except ImportError:
info['distro'] = '未知 (需安装 distro 库)'
return info
# 使用
os_info = get_os_info()
for k, v in os_info.items():
print(f"{k}: {v}")
Bash(主要针对 Linux/macOS)
#!/bin/bash
get_os_version() {
case "$(uname -s)" in
Linux)
if [ -f /etc/os-release ]; then
. /etc/os-release
echo "系统: $NAME $VERSION_ID"
elif [ -f /etc/redhat-release ]; then
echo "系统: $(cat /etc/redhat-release)"
else
echo "系统: 未知 Linux"
fi
echo "内核: $(uname -r)"
;;
Darwin)
echo "系统: macOS $(sw_vers -productVersion)"
echo "内核: $(uname -r)"
;;
CYGWIN*|MINGW*|MSYS*)
echo "系统: Windows $(cmd /c ver 2>/dev/null)"
;;
*)
echo "系统: $(uname -s) $(uname -r)"
;;
esac
}
get_os_version
技术解释
获取系统版本信息主要依赖以下技术:
- 系统调用:通过
/proc文件系统(Linux)或系统 API(Windows) - 环境变量:如
$OS、$PATH - 系统命令:如
uname、ver、sw_vers - WMI/WMIC(Windows):访问系统管理信息
- API 调用:如 Windows 的
GetVersionEx、macOS 的Gestalt
注意事项
- Windows 10/11 版本号格式为
0.BuildNumber - Linux 不同发行版获取方式可能不同
- 某些沙箱或容器环境可能返回受限信息
- 建议使用 Python 或 Node.js 实现跨平台兼容
需要我帮你实现某个特定场景下的版本获取脚本吗?