linha de comando do windows: posso informar o número do service pack?


12

Existe uma maneira de obter o número do service pack na linha de comando? Ou o número da compilação na linha de comando (na qual posso informar o número do service pack (consulte Como determinar a versão do Windows e o Service Pack no WindowsUpdateLog.txt ))?

Ao iniciar cmd, parte do número da versão do Windows é mostrada na tela, mas não o número do service pack.

Prefiro uma resposta que não seja do PowerShell, mas não me importaria em saber sobre uma resposta do PowerShell de qualquer maneira, já que alguns computadores com os quais eu ligo o têm instalado.


Respostas:


15
systeminfo | findstr /B /C:"OS Name" /C:"OS Version" 

Fonte: Encontre a versão do Windows no prompt de comando


Este é o único que funciona em todos os computadores nos quais experimentei esses métodos.
Alexander Bird

ps - o item acima só funciona se o idioma do usuário for o inglês, pois o filtro de string usa os nomes em inglês. Usar o systeminfo por conta própria funcionará em qualquer idioma - embora exija esforço manual para pesquisar todos os dados retornados.
31412 JohnLBevan

9

Você pode obtê-lo usando o WMIC - wmic os get servicepackmajorversion

Para saber mais sobre o uso do WMIC, consulte este pequeno tutorial: http://quux.wiki.zoho.com/WMIC-Snippets.html


O wmic está instalado em todos os computadores Windows? por alguma razão, meu computador doméstico não reconhece wmic.
Alexander Bird

1
Ferramenta incrível, obrigado por compartilhar! @ Thr4wn, de acordo com a Wikipedia, o WMIC não está disponível no Windows XP Home Edition, mas no XP Pro e em todas as versões posteriores do Windows.
Nhinkle 1/10/10

6

Você pode digitar CMD:

Winver


boa resposta! .... +1 quando eu receber mais votos
studiohack

2
Hum ... problema com isso é, ele abre uma ferramenta GUI, que pode não ser o que o usuário está tentando fazer.
Nhinkle

2
A execução do SYSTEMINFO em um prompt de comando será exibida sem a GUI.
R0ca

1
No cmd.exevocê pode usar just vere obter a versão no stdout. Mas você precisa converter o número da compilação para obter o SP.
Richard

vernão fornece o número da versão completa. Para imediatamente antes do número do service pack.
Alexander Bird

1

Você pode obtê-lo na linha de comando consultando o Registro para obter a chave ServicePack. Se um SP estiver instalado, ele será mostrado; caso contrário, ele indicará que não foi possível localizar a chave especificada; nesse caso, não há service pack.

reg query "HKLM\Software\Microsoft\Windows NT\CurrentVersion" /v ServicePack

Isso só funciona se houver um Service Pack instalado (por exemplo, atualmente o Windows 7 não tem um Service Pack assim que a chave não existe)
misterjaytee

Eu sei; foi o que afirmei na minha resposta. Se a chave não existir, não haverá service pack, portanto é o SP0. Se a chave existir, ele informará o service pack. De qualquer maneira, você pode descobrir qual service pack (se houver) está instalado.
Nhinkle 1/10/10

Quando tento a solução da Giri, ela mostra o SP 3, mas esse método relata que não foi possível encontrar a chave ou o valor do registro especificado (copiei / colei o comando no cmd).
Alexander Bird

Em vez de "ServicePack", você pode usar "ProductName" e "CSDVersion"
d.moncada
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.