Как получить версию Windows из командной строки или из PowerShell

Windows version.

Но есть ли способ получить точную строку версии, используя вывод командной строки, подобный тому, который упомянут на изображении?

Прилагается вывод команды winver из run. PS: я ищу пакетную или PowerShell команду.

Есть несколько альтернатив, доступных для получения версии Windows, например, эта команда PowerShell:

[System.Environment]::OSVersion

Ответ 1

Следующие команды помогут вам в этом. Если вам нужна дополнительная информация, просто введите systeminfo:

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

wmic os get Caption,CSDVersion /value

Ответ 2

Я нашел это где-то, PowerShell:

(Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion").ReleaseId

Ответ 3

Команда ver показывает что-то вроде этого:

> ver

Microsoft Windows [Versión 10.0.17134.228]

Но в PowerShell (или Git Bash) вы должны вызывать его с помощью команды cmd:

> cmd /c ver

Ответ 4

С системной информацией вы можете получить сборку только с этим значением и перейти в Google, чтобы получить соответствующую версию.

Однако одним простым способом является поиск в реестре в командной строке:

REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" | findstr REG_SZ

Ответ 5

Чтобы добавить в ответ @Bonifacio:

REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" | findstr ReleaseId

Было бы еще лучше, потому что он возвращает только значение ReleaseId, которое вы затем можете передать в файл. Особенно полезно, если вам нужно иметь дело с несколькими хостами.

REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" | findstr ReleaseId > any_path\%COMPUTERNAME%_OS_Version.txt