Em um prompt de comando elevado, digite wmic os get osarchitecture
. A saída é bem óbvia, eu acho - ela retornará "32 bits" ou "64 bits".
Possible Duplicates:
How to tell if a computer has a 64-bit CPU or OS
Detect Windows Server version 32/64-bit in CLI
OS version: 32-bit or 64-bit?
Como posso determinar se o meu sistema Windows é de 32 bits ou 64 bits a partir da linha de comando?
Eu quero saber o bitness do sistema operacional, não o hardware.
Esta questão aplica-se estritamente apenas à linha de comandos , não pretendo soluções de interface gráfica.
O programa de console systeminfo mostrará isso. Você desejará procurar a linha "System Type:". Para sistemas de 32 bits, ele dirá "PC baseado em x86". Para sistemas de 64 bits, ele dirá "PC baseado em x64".
Ou, para um método mais rápido, você pode simplesmente verificar a variável de ambiente PROCESSOR_ARCHITECTURE. Os sistemas de 64 bits dirão que os sistemas AMD64 e de 32 bits devem dizer "x86". Para verificar isso, você pode simplesmente fazer um eco:
echo %PROCESSOR_ARCHITECTURE%
David Wang, do MSDN Blogs, expande esse COMO: Detectar bitness de processo
Você pode verificar se a variável de ambiente %PROGRAMFILES(x86)%
está declarada. Em sistemas de 32 bits, ele não será definido (somente %PROGRAMFILES%
será). Isso também é mais seguro do que verificar se o diretório Program Files (x86) existe, já que ele pode ser movido (ou até excluído).
Eu escrevi um aplicativo de linha de comando simples que informa se o seu processador e seu sistema operacional são de 64 bits ou 32 bits.
Exemplo de leitura:
C:\bitchecker
The CPU is 64-bit and the OS is 32-bit
Por solicitação, aqui está a fonte, compilada usando a opção CLI, escrita em AutoIt.
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)
E aqui está um exemplo se você quiser switches para CPU (-c) e 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
E se você apenas verificar a presença de
%SYSTEMROOT%\Program Files(x86)
ou o que quer que seja chamado?
Tags command-line windows