Вызов функции из командлета Powershell - PullRequest
1 голос
/ 20 октября 2010

Я пытаюсь создать командлет, который вызывает функцию Powershell.Можно ли это сделать?

Идея состоит в том, чтобы иметь статический командлет, который перечисляет набор данных и затем вызывает определенную функцию, чтобы сделать что-то для каждого элемента.Я всегда могу скопировать - вставить базовый шаблон для части перечисления, но действительно легко делать ошибки при внесении изменений в параметры и т. Д.

1 Ответ

2 голосов
/ 20 октября 2010

Конечно, используйте свойство InvokeCommand в PSCmdlet (при условии, что вы производные от этого базового класса), например:

Collection<PSObject> result = this.InvokeCommand.InvokeScript("somefunc", true,
                                 PipelineResultTypes.None, null, new[] {1,2,3});

Обратите внимание, что в этом случае somefunc принимает три параметра (1,2,3)нет ввода конвейера (передайте null для четвертого параметра).

...