Powershell 7 SDK PSCmdlet - разница между GetCmdlet и GetCommand
В моем первом командлете Powershell на основе C # я столкнулся с проблемой запуска «существующих» командлетов из моего пользовательского командлета. Попутно обнаружил следующее:
InvokeCommand.GetCmdlet("Compress-7Zip")
а также
InvokeCommand.GetCommand("Compress-7Zip")
- Изменить Первый возвращает объект CmdletInfo, второй объект CommandInfo
- GetCmdlet имеет описание «Возвращает объект CmdletInfo, соответствующий аргументу имени».
- GetCommand не имеет описания, но поискав в Интернете, я нашел следующее на сайте Mirosoft: «Действие по вызову команды Microsoft.PowerShell.Core\Get-Command в рабочем процессе»
Почему существуют эти два метода и какие мы используем для чего?
1 ответ
Get-Cmdlet — возвращает объект CmdletInfo, соответствующий аргументу «Имя» .
Get-Command — получает все команды, которые «установлены» на компьютере, включая командлеты, псевдонимы, функции, фильтры, сценарии и приложения.
Get-командлет
Get-команда https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/get-command?view=powershell-7.2