Qual é a linha de comando para descobrir se o sistema operacional está executando uma versão de 32 bits ou 64 bits do Windows?
26
Qual é a linha de comando para descobrir se o sistema operacional está executando uma versão de 32 bits ou 64 bits do Windows?
Respostas:
Você pode obter isso via WMI:
Exemplo no meu sistema:
fonte
Linha de comando:
saída de exemplo:
X86 indica um sistema de 32 bits neste exemplo.
(
/I
parâmetro indica pesquisa que não diferencia maiúsculas de minúsculas )fonte
systeminfo | findstr /I typ:
que toda a entrada éSystemtyp: x64-based PC
systeminfo | findstr /C:"System Type"
também recupera a mesma informação, mas acho que textos mais longos são menos preferidos.Não consigo anexar resposta a outro post aqui. Pipetar o resultado de
systeminfo
- está demorando bastante tempo e grava no console, portanto, não é a melhor solução para arquivos de comando (scripts em lote - de qualquer maneira que você queira chamá-los de B-)).Mesmo com o
findstr
- ele não encontra isso na versão do Windows em outro idioma. Em um idioma da Europa Central, o win7 também retorna ... "baseado em X86" ... no resultado, mas outra coisa que o "tipo" estava procurando. Não tenho certeza de que ele possa variar em outras variantes de idioma do sistema operacional.Provavelmente o método "wmic" é o mais confiável - ele pergunta diretamente ao sistema operacional.
Outra solução rápida possível é examinar uma variável (pelo menos trabalhando em win7 para mim).
Ok - é bastante longo para lembrar, mas é possível lembrar um
set | findstr ARCH
possível.Claro - alguns podem modificar uma variável de sistema para não ser tão confiável quanto isso
wmic
. Mas pode ser usado rapidamente.Espero poder ajudar alguém.
fonte
Existem várias maneiras de verificar a arquitetura do processador no Windows:
A maneira mais rápida, fácil e compatível de verificar a arquitetura do processador em pelo menos o Windows 2000 e superior é examinar a
PROCESSOR_ARCHITECTURE
variável de ambiente :echo %PROCESSOR_ARCHITECTURE%
No entanto, isso pode gerar resultados diferentes, dependendo da maneira como o prompt de comando é aberto. Para evitar a obtenção de "resultados inesperados" devido ao WoW64 , você pode lê-lo diretamente do registro (a Microsoft fez nada menos que dois erros de digitação na chave ):
reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PROCESSOR_ARCHITECTURE
A Microsoft também sugere a leitura do armazenamento de informações de hardware no registro:
reg query "HKLM\Hardware\Description\System\CentralProcessor\0" /v Identifier
Você também pode verificar a existência da versão x86 do
Program Files
diretório (ou a variável de ambiente que aponta para ele), pois ela existiria apenas em um sistema de 64 bits. Diferente daPROCESSOR_ARCHITECTURE
variável, isso não depende da maneira como o prompt de comando é executado, pois o diretório existe (ou não), independentemente de como o prompt é aberto:::via env-var
if not defined ProgramFiles(x86) echo 32-bit
::via file-system
if not exist "%systemdrive%\Program Files (x86)" echo 32-bit
Esses métodos podem ser combinados em um único arquivo em lotes (por exemplo,
cpuinfo.bat
) e fornecem uma maneira rápida e agradável de verificar o sistema em um prompt de comando padrão do Windows NT, sem a necessidade de recorrer à execução de outros programas ou estruturas.O arquivo em lote abaixo foi testado em sistemas de 32 bits e Intel de 64 bits (teste no AMD64), fornecendo resultados corretos em <1 segundo:
fonte
Não consegui encontrar a
OSArchitecture
propriedade (conforme resposta de phoebus), então sugiro usar aSystemType
propriedadeComputerSystem
.A execução do comando
wmic computersystem get systemtype
em um prompt de comando fornecefonte
Linha de comando regular:
wmic OS get OSArchitecture
(IIRC)PowerShell:
(gwmi win32_computersystem).SystemType
fonte
Invalid Query
no XP.se você estiver se referindo ao sistema operacional Windows, poderá usar o vbscript com o WMI
fonte
Você pode encontrar essas informações usando "Informações do sistema"
Em "Resumo do sistema" / Tipo de sistema, você pode encontrar a versão do sistema operacional
Resposta de JohnT na GUI;)
fonte
Vá em Iniciar »Executar e digite
cmd
. Agora você estará no prompt de comando. Lá você pode digitarsysteminfo
e pressionar enter. Demora alguns segundos para obter todas as informações do sistema. Você também pode encontrar os dados do processador.fonte
more
.Código simples que eu usei:
fonte