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)を使用できます。このバッチファイルは、取得して表示します。
- オペレーティングシステムのバージョン
- サービスパックのメジャーバージョン
- アーキテクチャ(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%
ます。
ノート:
テストするOSとService Packのすべての組み合わせがないため、完全にはテストされていません。
このfor
コマンドは、OSの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またはStartを入力すると、[Windowsについて]ダイアログが表示されます。それはうまくいくでしょうか?または-stackoverflow.com/questions/1792740/…–