línea de comando de Windows: ¿puedo decir el número del Service Pack?

12

¿Hay alguna forma de obtener el número del paquete de servicio desde la línea de comandos? ¿O el número de compilación desde la línea de comandos (desde el cual puedo decir el número del paquete de servicio (consulte ¿Cómo determino la versión de Windows y el Service Pack de WindowsUpdateLog.txt ))?

Al comenzar cmd, parte del número de versión de Windows se muestra en la pantalla, pero no el número del paquete de servicio.

Prefiero una respuesta que no sea de PowerShell, pero de todos modos no me importaría saber sobre una respuesta de PowerShell, ya que algunas computadoras con las que trato sí la tienen instalada.

Alexander Bird
fuente
Otros sitios web relacionados: eggheadcafe.com/software/aspnet/29718402/… y support.microsoft.com/kb/279631
Alexander Bird

Respuestas:

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

Fuente: encontrar la versión de Windows desde el símbolo del sistema

Giri
fuente
Este es el único que funciona en todas las computadoras en las que he probado estos métodos.
Alexander Bird
ps: lo anterior solo funciona si el idioma del usuario es el inglés, ya que el filtro de cadena usa los nombres en inglés. El uso de systeminfo por sí solo funcionará para cualquier idioma, aunque requiere un esfuerzo manual para buscar en todos los datos devueltos.
JohnLBevan
9

Puede obtenerlo usando WMIC - wmic os obtener servicepackmajorversion

Para obtener más información sobre el uso de WMIC, consulte este pequeño tutorial: http://quux.wiki.zoho.com/WMIC-Snippets.html

Multiverse IT
fuente
¿Está wmic instalado en todas las computadoras con Windows? por alguna razón, la computadora de mi casa no reconoce wmic.
Alexander Bird
1
Impresionante herramienta, gracias por compartir! @ Thr4wn, según Wikipedia, WMIC no está disponible en Windows XP Home Edition, pero está disponible en XP Pro y todas las versiones posteriores de Windows.
nhinkle
6

Puede escribir CMD:

Winver

r0ca
fuente
¡buena respuesta! .... +1 cuando obtengo más votos
studiohack
2
Hm ... el problema con eso es que abre una herramienta GUI, que puede no ser lo que el usuario intenta hacer.
nhinkle
2
SYSTEMINFO ejecutado en un símbolo del sistema se mostrará sin GUI.
r0ca
1
En cmd.exepuedes usar just very obtener la versión en stdout. Pero necesita convertir el número de compilación para obtener el SP.
Richard
verno da el número de versión completo. Se detiene justo antes del número del paquete de servicio.
Alexander Bird
1

Puede obtenerlo desde la línea de comandos consultando el registro para obtener la clave ServicePack. Si se instala un SP, se mostrará, de lo contrario, dirá que no pudo localizar la clave especificada, en cuyo caso no hay ningún paquete de servicio.

reg query "HKLM\Software\Microsoft\Windows NT\CurrentVersion" /v ServicePack
nhinkle
fuente
Esto sólo funciona si hay un Service Pack instalado (por ejemplo, actualmente Windows 7 no tiene un Service Pack de forma no existe la clave)
misterjaytee
Lo sé; eso es lo que dije en mi respuesta. Si la clave no existe, entonces no hay paquete de servicio, por lo tanto, es SP0. Si la clave existe, le indicará el paquete de servicio. De cualquier manera, puede averiguar qué service pack (si lo hay) está instalado.
nhinkle
Cuando pruebo la solución de Giri, muestra SP 3, pero este método informa que no pudo encontrar la clave o valor de registro especificado (copié / pegué el comando en cmd).
Alexander Bird
En lugar de "ServicePack", puede usar "ProductName" y "CSDVersion"
d.moncada