考えられる重複:
コンピューターに64ビットCPUまたはOSがあるかどうかを確認する方法
CLI OSバージョンで32/64ビットのWindows Serverバージョンを検出する
:32ビットまたは64ビット?
コマンドラインからWindowsシステムが32ビットか64ビットかを確認するにはどうすればよいですか?
ハードウェアではなく、オペレーティングシステムのビット数を知りたい。
この質問は厳密にコマンドラインにのみ適用されます。GUIソリューションは必要ありません。
考えられる重複:
コンピューターに64ビットCPUまたはOSがあるかどうかを確認する方法
CLI OSバージョンで32/64ビットのWindows Serverバージョンを検出する
:32ビットまたは64ビット?
コマンドラインからWindowsシステムが32ビットか64ビットかを確認するにはどうすればよいですか?
ハードウェアではなく、オペレーティングシステムのビット数を知りたい。
この質問は厳密にコマンドラインにのみ適用されます。GUIソリューションは必要ありません。
回答:
管理者特権のコマンドプロンプトから、と入力しますwmic os get osarchitecture
。出力はかなり明白です、私は思う-それは「32ビット」または「64ビット」のいずれかを返します。
systeminfoコンソールプログラムはこれを表示します。「System Type:」行を探してください。32ビットシステムの場合、「x86ベースのPC」と表示されます。64ビットシステムの場合、「x64ベースのPC」と表示されます。
または、より迅速な方法のために、単にPROCESSOR_ARCHITECTURE環境変数を確認できます。64ビットシステムではAMD64、32ビットシステムでは「x86」と表示されます。これを確認するには、単にエコーアウトするだけです:
echo %PROCESSOR_ARCHITECTURE%
MSDNブログのDavid Wangは、このHOWTO:Process Bitnessの検出について詳しく説明しています。
%PROGRAMFILES(x86)%
環境変数が宣言されているかどうかを確認できます。32ビットシステムでは、定義されません(定義されるだけ%PROGRAMFILES%
です)。これは、Program Files(x86)ディレクトリが存在するかどうかを確認するよりも安全です。これは、ディレクトリを移動(または削除)できるためです。
%PROGRAMFILES(x86)%
、%PROGRAMFILES%
変数と変数を比較して、cmdが32ビットモードまたは64ビットモードで起動されているかどうかを確認できます。(64ビットウィンドウ上で、32ビットcmdを実行できます。)例:IF %PROGRAMFILES(x86)%
== %PROGRAMFILES%
=> 32ビットcmd(64ビットウィンドウで実行中....)IF %PROGRAMFILES(x86)%
<> %PROGRAMFILES%
=> 64ビットcmd。
プロセッサとOSが64ビットか32ビットかを示す簡単なコマンドラインアプリケーションを作成しました。
読み出し例:
C:\bitchecker
The CPU is 64-bit and the OS is 32-bit
リクエストごとに、AutoItで記述されたCLIオプションを使用してコンパイルされたソースがあります。
If @CPUARCH = "x86" Then
$CPUARCH = "32-bit"
Else
$CPUARCH = "64-bit"
EndIf
If @OSARCH = "x86" Then
$OSARCH = "32-bit"
Else
$OSARCH = "64-bit"
EndIf
ConsoleWrite("The CPU is " & $CPUARCH & " and the OS is " & $OSARCH)
CPU(-c)およびOS(-o)のスイッチが必要な場合の例を次に示します。
Dim $CPUARCH, $OSARCH
If @CPUARCH = "x86" Then
$CPUARCH = "32-bit"
Else
$CPUARCH = "64-bit"
EndIf
If @OSARCH = "x86" Then
$OSARCH = "32-bit"
Else
$OSARCH = "64-bit"
EndIf
If $CmdLine[0] = 0 Then
ConsoleWrite("The CPU is " & $CPUARCH & " and the OS is " & $OSARCH)
Else
Select
Case $CmdLine[1] = "-c"
ConsoleWrite($CPUARCH)
Case $CmdLine[1] = "-o"
ConsoleWrite($OSARCH)
Case Else
ConsoleWrite("The CPU is " & $CPUARCH & " and the OS is " & $OSARCH)
EndSelect
EndIf
の存在を確認するだけの場合
%SYSTEMROOT%\ Program Files(x86)
またはそれは何と呼ばれますか?
dir \Program *
。
systeminfo
がリストにないのは悲しいです。