Назад | Перейти на главную страницу

Можно ли получить windows-версию с помощью команды powershell на Windows Server 2016 Nano?

Я использую последнюю предварительную версию Windows Server 2016 nano.

Используя удаленный сеанс PowerShell, я подключаюсь к удаленной системе через Enter-PSSession, а затем я попытался использовать наиболее распространенные методы для проверки версий Windows, поскольку полная структура .Net недоступна. Также недоступен командлет Get-WmiObject.

Единственный способ, которым я могу увидеть НЕКОТОРЫЕ информацию, - это DISM с командой, отличной от Powershell:

Dism /Online /Get-Feature

Это дает мне этот вывод плюс список установленных функций:

Deployment Image Servicing and Management tool
Version: 10.0.10514.0

Image Version: 10.0.10514.0

Features listing for package : Microsoft-Windows-Foundation-Package~31bf3856ad364e35~amd64~~10.0.10514.0

По значению 10514, которое выше, чем у моего рабочего стола Windows 10, я могу получить некоторое представление о сборке ядра, и интересно, что рабочий стол Windows 10 имеет тот же «Microsoft-Windows-Foundation-Package», но меньшую сборку ядра. число.

Кто-нибудь нашел командлет или некоторую функцию PowerShell или псевдоним, который можно было бы написать, который либо обнаружит для меня тот факт, что мой скрипт PowerShell запущен на нано-сервере каким-либо образом, который вряд ли сломается, либо любую команду, которая будет на самом деле распечатать "Windows Server 2016 Nano Server"?

Обновление: это ближе к тому, что я хочу, но это немного взлом:

  Get-Item -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion'

Обновление 2: Get-WmiObject отсутствует, и хотя следующее работает, он сообщает только версию ядра:

[System.Environment]::OSVersion.Version

Выше сообщается сборка 10514, тогда как RTM клиентских операционных систем Windows 10 на данный момент сообщает о 10240, но на самом деле это «сборка ядра», а не уровень продукта / версии / пакета обновления операционной системы.

Вы можете попробовать следующее, у меня нет нано-сервера, на котором можно это опробовать. Отбросьте select если это даст вам что-то еще, и посмотрите, хранится ли то, что вы хотите, в другом свойстве в Server 2016 Nano

Get-CIMInstance -ClassName Win32_OperatingSystem -Property * | select caption

При тестировании на реальном экземпляре Nano параметр -session не требовался, но если он вам понадобится в будущем, вот вариант с -session:

$cuser = "Your username"
$cservername = "Your Servername"
$csession = New-CimSession –Credential $cuser –ComputerName $cservername
Get-CIMInstance –session $csession -ClassName Win32_OperatingSystem -Property * | select caption

Это просто расширение вашего редактирования, но оно очищает вывод, получая только ProductName

$(Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion' ProductName).ProductName

Способ Microsoft, также известный как метод Cert, заключается в использовании Get-WindowsEdition -Online

дополнительную информацию о команде и всех ее параметрах можно найти на Вот!

Административная командная строка PowerShell и ввод:

 Get-WmiObject -Class Win32_Operatingsystem

Возврат:

Build Number and Version