Что такое командлет PowerShell? - PullRequest
10 голосов
/ 10 июля 2009

Концептуальный подход к командлетам,

  1. Как они сделаны? Они составлены?

  2. Это эквивалент командного файла для PowerShell? Это скрипт или бинарный файл?

  3. Какая структура используется для хранения этих командлетов?

Ответы [ 4 ]

23 голосов
/ 11 июля 2009

Командлет PowerShell - это скомпилированный фрагмент кода .NET, точнее один класс, если я не ошибаюсь. Командлеты являются своего рода «нативными» командами в PowerShell, они способны обрабатывать ввод и вывод объектов, а также обычно хорошо и хорошо работают с конвейером (на основе объектов).

Командлеты не имеют прямого представления в файловой системе, поскольку они не являются программами или аналогичными. Они существуют исключительно в PowerShell. Вы можете использовать командлет Get-Command для запроса всех доступных командлетов, функций и т. Д.

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

3 голосов
/ 11 июля 2009
3 голосов
/ 11 июля 2009

Эта ссылка может помочь понять командлет powershell:

http://www.powershellpro.com/powershell-tutorial-introduction/tutorial-powershell-cmdlet/

1 голос
/ 11 июля 2009

Командлет PowerShell - это пользовательское расширение языка сценариев PowerShell. Сам Cmdlet - это класс .NET , выходящий из PSCmdlet. Обычно в командлет включаются дополнительные компоненты для предоставления справки и регистрации командлета.

Командлет позволяет получить доступ ко всем функциям, доступным через виртуальную машину .NET. Это может варьироваться от простых сценариев до полнофункциональных программ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...