`Get-PSSubsystem` не распознан

PS C:\> Get-PSSubsystem вызывает ошибку

Get-PSSubsystem: The term 'Get-PSSubsystem' is not recognized as a name of a cmdlet, function, script file, or executable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

Согласно документации , Get-PSSubsystem является частью модуля Microsoft.PowerShell.Core, и указанный модуль нельзя установить?

Оснастка Microsoft.PowerShell.Core содержит командлеты и поставщики, которые управляют основными функциями PowerShell. PowerShell автоматически загружает оснастку Microsoft.PowerShell.Core при запуске. Это не модуль. Вы не можете импортировать его с помощью Import-Module или удалить с помощью Remove-Module.

источник цитаты


Сделал Get-Module Microsoft.PowerShell.Core -ListAvailable и ничего не вышло.

Попробовал другую команду Microsoft.PowerShell.Core (Add-History) и не получил ошибки.

Вывод Get-Help Subsystem | Select Name

Name
----
New-StorageSubsystemVirtualDisk
Set-StorageSubSystem
Debug-StorageSubSystem
Unregister-StorageSubsystem
Register-StorageSubsystem
Get-StorageSubSystem

`Get-Команда | sls Subsystem» вывел тот же список (но в другом порядке).


Если это актуально, вот результат $PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.4.5
PSEdition                      Core
GitCommitId                    7.4.5
OS                             Microsoft Windows 10.0.22631
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
2
0
58
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Возможно, у вас нет пакета «System.Management.Automation».

И вам следует его установить. По этому поводу есть еще одна тема:

https://stackoverflow.com/questions/1186270/referencing-system-management-automation-dll-in-visual-studio

Когда у вас будет этот пакет, вы сможете импортировать сам модуль или dll, если вам нужен только его класс. C:\windows\assembly\GAC_MSIL\System.Management.Automation\1.0.0.0__31bf3856ad364e35\System.Management.Automation.dll

Ответ принят как подходящий

Get-PSSubsystem

это экспериментальный командлет:

Обратите внимание

Это экспериментальная функция. Этот командлет доступен только в том случае, если включена функция PSSubsystemPluginModel. Дополнительную информацию см. в разделе Использование экспериментальных функций.

Это означает, что Get-PSSubsystem (пока) недоступен в текущей версии PowerShell 7.4.5, но он доступен в версии PowerShell.Preview 7.5.0.4.

Вы можете установить эту предварительную версию с помощью команды:

winget install --id Microsoft.Powershell.Preview --source winget

И как только вы его установите, вы сможете использовать эту предварительную версию, например. Windows - Start или запустив его из командной строки:

"C:\Program Files\PowerShell\7-preview\pwsh.exe" -WorkingDirectory ~
PowerShell 7.5.0-preview.4
$PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.5.0-preview.4
PSEdition                      Core
GitCommitId                    7.5.0-preview.4
OS                             Microsoft Windows 10.0.19045
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

PS C:\> Get-PSSubsystem -?

NAME
    Get-PSSubsystem

SYNTAX
    Get-PSSubsystem [<CommonParameters>]

    Get-PSSubsystem -Kind {CommandPredictor | CrossPlatformDsc | FeedbackProvider} [<CommonParameters>]

    Get-PSSubsystem -SubsystemType <type> [<CommonParameters>]

...

⚠️ Внимание

Экспериментальные функции не предназначены для использования в рабочей среде, поскольку изменения могут быть критическими. Экспериментальные функции официально не поддерживаются. Тем не менее, мы ценим любые отзывы и сообщения об ошибках. Вы можете сообщать о проблемах в исходном репозитории GitHub.

К вашему сведению: для этого также создан выпуск документа: #11374. Запишите экспериментальные командлеты

iRon 01.09.2024 11:39

Спасибо! Я ценю помощь! Я совершенно пропустил Note в документе Get-PSSubsystem.

joseville 01.09.2024 15:14

Другие вопросы по теме