Согласен с Shadowzee, PS может сделать это напрямую, нет необходимости в командном файле.Передача набора параметров означает, что PS .ps1 принимает параметры.
Вы можете вызывать функцию PS из пакетного файла, вы вызываете их в сеансе PS.
Если вы говорите,Вы хотите запустить .ps1 и отправить ему параметры, а затем выполнить это direclty, то есть, например, так:
Сохраните приведенное ниже как Get-ServiceAlert.ps1, а не функцию в .ps1.Это позволяет вам передавать параметры при использовании сценария.
Param
(
[String]$ComputerList,
[String[]]$includeService,
[String]$Reportname
)
Запустите сценарий с консоли, как это ...
D:\Scripts\Get-ServiceAlert.ps1 -ComputerList $_ -includeService 'Service(s) to include' -Reportname 'D:\Scripts\Reports\ServiceReport.txt'
Ваш вопрос указывает, что вы не можетепока все в PS, потому что то, что вы пытаетесь, это не то, как функции работают внешне.
Вы используете функцию внутри скрипта не внешне, если вы не превратите свой скрипт в модуль (.psm1), который вы можете загрузить (Import-Module), что позволяет получить доступ к внешним функциям модуля.
Возьмите несколько и посмотрите бесплатное видео-обучение по PSA на Microsoft Virtual Academy, MS Channel9 и Youtube.