是否有命令确定我是否在Windows 10系统上工作?
您可以使用wmic
。
以下命令将返回Windows版本。
wmic os get Caption | findstr /v Caption
输出示例:
F:\test>wmic os get Caption | findstr /v Caption
Microsoft Windows 7 Home Premium
如果需要更多信息,可以使用以下批处理文件(GetOS.cmd),该文件将检索并显示:
- 作业系统版本
- Service Pack主要版本
- 架构(64位或32位)
@echo off
setlocal
setlocal enabledelayedexpansion
set _os=
set _sp=
rem use findstr to strip blank lines from wmic output
rem get OS
for /f "usebackq skip=1 tokens=3" %%i in (`wmic os get caption ^| findstr /r /v "^$"`) do (
set "_os=%%i"
)
rem get Service Pack
for /f "usebackq skip=1 tokens=*" %%i in (`wmic os get ServicePackMajorVersion ^| findstr /r /v "^$"`) do (
set "_sp=%%i"
)
rem get Architecture
for /f "usebackq skip=1 tokens=*" %%i in (`wmic OS get OSArchitecture ^| findstr /r /v "^$"`) do (
set "_bits=%%i"
)
echo Operating System Version: %_os%
echo Service Pack Major Version: %_sp%
echo Architecture: %_bits%
endlocal
OS版本存储在中%_os
,Service Pack主要版本存储在中%_sp%
,体系结构存储在中%_bits%
。
笔记:
没有完全测试,因为我没有所有的操作系统和Service Pack组合都可以对其进行测试。
该for
命令仅检索操作系统的第3部分(令牌)。这将适用于台式机版本(如果要将Server 2008与其他版本区分开,则需要找到其他解决方案)。
%_os
将被设置为以下值中的一个:Server
,Vista
,7
,8
,8.1
或10
。
输出示例:
F:\test>GetOS
Operating System Version: 7
Service Pack Major Version: 1
Architecture: 64-bit
F:\test>
进一步阅读
winver
如果键入cmd或“开始”,将弹出“关于Windows”对话框。那行得通吗?或者- stackoverflow.com/questions/1792740/...