Изучите множество способов в PowerShell для получения версии Windows

Устранение неполадок в вашей системе и нужен быстрый способ узнать версию вашей операционной системы Windows? К счастью, вы можете использовать PowerShell, чтобы получить информацию о версии Windows, на которой вы находитесь.

Проверка версии Windows, которую вы используете, является важным элементом управления вашей системой. И в этом учебнике вы узнаете множество способов получения версии Windows и не только.

Читайте далее и решайте сами, какой метод вам больше подходит!

Предварительные требования

Этот учебник представляет собой практическую демонстрацию. Чтобы следовать за ним, убедитесь, что у вас есть система Windows. В этом учебнике используется Windows 11 с PowerShell 7.

Использование PowerShell для получения версии Windows

Прежде чем браться за сложные вещи с PowerShell, начните с основ, таких как получение информации о вашей системе. С помощью PowerShell вы можете быстро получить информацию о версии Windows с помощью команды systeminfo.

Откройте PowerShell и выполните следующую команду, чтобы получить подробную информацию о вашей системе, включая версию операционной системы (OS).

systeminfo.exe

Ниже вы можете увидеть подробную информацию о версии ОС, включая текущий номер версии, 10.0.22622 N/A Build 22622.

Getting the Windows version via the SystemInfo

Выбор конкретных свойств для получения версии Windows

Отлично! Вы только что получили подробную информацию о системе. Но если посмотреть внимательно, команда короткая, а вывод кажется большим.

Если вам нужны только определенные значения свойств, команда Get-ComputerInfo – один из самых быстрых способов получения конкретной информации о системе, например, вашей версии Windows.

Запустите следующее, чтобы получить версию Windows, название продукта и версию ядра Windows, а также абстракцию аппаратного обеспечения вашей системы (OHA).

Ниже, применение команды Select-Object к команде Get-ComputerInfo позволяет получить только выбранные свойства.

Get-ComputerInfo | Select-Object OSName, OSVersion, OsHardwareAbstractionLayer

Как видите, установлена Windows 10 Pro, и ее версия – 2009.

Getting the Windows version with the Get-ComputerInfo command

Получение версии Windows с помощью класса System.Environment

Еще один способ получить версию Windows – через класс System.Environment. Этот класс предоставляет доступ к информации о системе, такой как версия ОС, имя пользователя и другие переменные среды.

Класс System.Environment также имеет свойство с именем OSVersion, которое содержит информацию о текущей ОС.

Запустите следующую команду, чтобы вызвать свойство OSVersion.Version из класса System.Environment. Двойное двоеточие (::) используется для вызова статических методов из класса.

[System.Environment]::OSVersion.Version

Как видно ниже, вывод отображает информацию об ОС в следующем формате:

Property Value Description
Major 10 Despite saying 10, this may indicate Windows 10 or 11 as both use the same Major version.
Minor 0 There are two types of Windows releases, major and minor. Major releases are the “big” updates like the Creator update, and minor releases are smaller cumulative updates.
Build 22622 The number used to check the Windows version. In this case, it is for version 22H2.
Revision 0 Denotes a sub-version of the build.
Getting the windows via the System.Environment class

Разбор конкретного свойства для получения версии Windows

Cmdlet PowerShell предоставляет ряд сведений о вашей системе. Но если вам нужно получить только версию Windows, есть еще один вариант – команда Get-ItemProperty. Эта команда позволяет получить доступ к реестру и получить различные свойства из него.

Выполните следующую команду, чтобы получить доступ к реестру (Get-ItemProperty) и извлечь значение DisplayVersion вашей текущей версии Windows (HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion). Версия отображения (идентификатор выпуска устарел) является уникальным идентификатором для каждой версии Windows.

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

Ниже приведена команда, которая извлекает и выводит текущую версию Windows, которая равна 22H2.

Getting the Windows version via the Get-ItemProperty command

Запрос текущей версии Windows

Вы видели, как доступ к свойствам позволяет получить текущую версию Windows. И пока вы изучаете свойства, познакомьтесь с командой Get-CimInstance.

Get-CimInstance – это еще один способ получить версию вашей операционной системы Windows, выполнив запрос к объектам Windows Management Instrumentation (WMI). Это позволяет получить доступ к различным свойствам аппаратного обеспечения вашей системы.

Запустите следующую команду для запроса (Get-CimInstance) класса Win32_OperatingSystem (объект WMI), чтобы получить текущую версию Windows через свойство .version. Класс Win32_OperatingSystem предоставляет информацию об операционной системе.

(Get-CimInstance Win32_OperatingSystem) | Select-Object Caption, Version

Как видно ниже, эти результаты аналогичны использованию класса System.Environment. Но на этот раз вы получаете только фактическую версию ОС без заголовков свойств. Ревизия также опущена, поскольку она недоступна в объекте WMI.

Querying WMI for the current Windows version

Вывод

На протяжении этого учебного пособия вы узнали множество способов в PowerShell для получения текущей версии Windows. Проверка версии Windows в PowerShell – это ценный навык. Этот навык может быть полезен при устранении проблем системы или проверке совместимости приложений с текущей ОС.

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

Source:
https://adamtheautomator.com/powershell-to-get-the-windows-version/