Я использую последнюю предварительную версию 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