Windowsのオペレーティングシステムを利用する際、自分が現在どのバージョンやビルド番号を使用しているかを確認しなければならない場面は多々あります。
特にソフトウェアのインストール要件の確認や、システムトラブル発生時のサポート対応において、詳細なバージョン情報は解決の糸口となります。
WindowsにはGUI(設定画面)から情報を確認する方法もありますが、コマンドプロンプトを利用することでより素早く、かつ正確に情報を取得することが可能です。
本記事では、コマンドプロンプトで最も簡単にバージョンを確認できるverコマンドを中心に、その使い方や出力結果の読み解き方を解説します。
また、スクリプト作成時に役立つ応用的な確認方法や、他のコマンドとの違いについても詳しく紹介していきます。
verコマンドでWindowsバージョンを確認する基本操作
コマンドプロンプトでWindowsのバージョン情報を取得する最も標準的な方法は、verコマンドを使用することです。
このコマンドは「version」の略称であり、実行するだけで現在動作しているWindowsカーネルのバージョンを表示します。
まずは、最も基本的な実行手順を確認していきましょう。
verコマンドの実行手順
コマンドプロンプトを起動するには、キーボードの「Windowsロゴキー + R」を押し、cmdと入力してEnterキーを押します。
黒い画面が表示されたら、以下のコマンドを入力してEnterキーを押してください。
ver
実行すると、以下のような形式で情報が表示されます。
Microsoft Windows [Version 10.0.22631.3447]
このように、一行のテキストとして簡潔にOSのバージョンが表示されるのが特徴です。
出力結果から読み取れる情報
verコマンドの実行結果には、複数の数字がドットで区切られて表示されます。
これらは単なる数字の羅列ではなく、それぞれがOSの重要な区分を示しています。
一般的なWindows 10やWindows 11の場合、先頭の「10.0」はカーネルバージョンを指しています。
その後に続く数字(例:22631など)は「ビルド番号」と呼ばれ、大規模なアップデートが適用されるたびに更新されます。
最後のセグメント(例:3447など)はリビジョン番号やパッチレベルを示しており、品質更新プログラムの適用状況を表しています。
システム管理者が「最新のセキュリティ更新が適用されているか」を判断する際、この詳細なビルド番号が非常に重要な役割を果たします。
verコマンド以外のバージョン確認方法
verコマンドは非常に軽量で便利ですが、表示される情報は最小限に限られています。
OSのエディション(HomeやPro)や、システムのインストール日など、より詳細な情報を知りたい場合には別のコマンドを併用するのが一般的です。
systeminfoコマンドによる詳細確認
systeminfoコマンドを使用すると、OSの名称、バージョン、エディション、プロセッサの種類、メモリ容量など、システム全体の詳細なレポートを表示できます。
systeminfo
このコマンドを実行すると情報の収集が始まり、数秒後に詳細なリストが出力されます。
バージョン情報に関連する箇所を特定したい場合は、パイプ処理(findstr)を組み合わせて以下のように実行すると効率的です。
systeminfo | findstr /B /C:"OS"
このコマンドを実行することで、OS名やバージョンに関連する行だけを抽出して表示することが可能です。
特定のパッチが適用されているかを確認したい場合は、systeminfoの方が適しています。
winverコマンドによる画面表示
コマンドプロンプトからGUIのバージョン確認ウィンドウを呼び出すことも可能です。
winver
このコマンドを実行すると、デスクトップ上に「Windowsのバージョン情報」というダイアログボックスが表示されます。
テキストコピーはしにくいですが、視覚的にエディションやライセンス所有者を確認する際には非常に便利です。
レジストリからバージョン情報を取得する方法
システムのより深い階層に記録されているバージョン情報を取得したい場合、レジストリを照会する方法があります。
reg queryコマンドを使用することで、レジストリエディタを開かずに値を直接確認できます。
製品名の確認
以下のコマンドを実行すると、インストールされているWindowsの製品名を取得できます。
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v ProductName
出力例は以下の通りです。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
ProductName REG_SZ Windows 11 Pro
詳細なビルド情報の確認
さらに詳細なビルド情報を取得するには、CurrentBuildやUBR(Update Build Revision)という値を参照します。
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v CurrentBuild
これらのコマンドは、プログラムやバッチファイルの中からOSのバージョンを判定するロジックを組む際に非常に有用です。
環境変数やレジストリの値を直接読み取ることで、より確実なシステム判定が可能になります。
バッチファイルでのverコマンドの活用例
verコマンドは、バッチファイル内で実行環境のOSを判定し、処理を分岐させる際によく使われます。
特定のWindowsバージョンでのみ動作させたいツールや設定がある場合、以下のような記述が役立ちます。
バージョン判定のスクリプト例
以下は、verコマンドの結果に特定のビルド番号が含まれているかを判定する簡単なバッチファイルのサンプルです。
@echo off
rem Windowsのバージョン情報を取得して変数に格納
for /f "tokens=4-5 delims=. " %%i in ('ver') do set VERSION=%%i.%%j
echo 現在のカーネルバージョン: %VERSION%
rem バージョンが10.0(Windows 10/11)であるかチェック
if "%VERSION%"=="10.0" (
echo このシステムは最新世代のWindowsです。
) else (
echo 以前のOSまたは未対応のバージョンです。
)
pause
このスクリプトでは、forコマンドを使用してverコマンドの出力をパースし、バージョン番号の部分だけを取り出しています。
このように自動化プロセスに組み込むことで、手動での確認ミスを防ぎ、環境に適した処理を自動的に実行できるようになります。
OSバージョンとビルド番号の対応表
表示された数値がどのWindowsを指しているのかを理解するために、代表的なバージョン番号の対応関係を把握しておきましょう。
以下の表は、主要なリリースとそれに対応する数値の目安です。
| OS名称 | メジャーバージョン | ビルド番号(代表例) |
|---|---|---|
| Windows 11 (23H2) | 10.0 | 22631 |
| Windows 11 (22H2) | 10.0 | 22621 |
| Windows 10 (22H2) | 10.0 | 19045 |
| Windows Server 2022 | 10.0 | 20348 |
| Windows 8.1 | 6.3 | 9600 |
| Windows 7 | 6.1 | 7601 |
Windows 10以降、メジャーバージョン番号は「10.0」のまま固定される傾向にあります。
そのため、Windows 10とWindows 11を区別したり、大型アップデートの適用状況を確認したりするには、ビルド番号の確認が不可欠です。
verコマンドで表示される「22621」以上の数値であれば、それは一般的にWindows 11の環境であることを示しています。
まとめ
コマンドプロンプトのverコマンドは、Windowsのバージョン情報を即座に確認できる非常にシンプルで強力なツールです。
GUIの操作に頼らずとも、キーボード入力だけで正確なビルド番号を取得できるため、エンジニアやIT管理者にとって必須の知識と言えます。
より詳細な構成情報が必要な場合はsysteminfoコマンドを使い、自動化処理に組み込む場合はレジストリ照会やバッチスクリプトを活用しましょう。
日常的なPC管理やトラブルシューティングにおいて、これらのコマンドを使い分けることで作業効率は大幅に向上します。
まずはverコマンドを一度実行して、自分の環境がどのようなビルド番号で動作しているかを確認してみてください。
