所以我可以说一个名为CallMePlease.ps1
此脚本将获取参数/参数,然后执行一些过程。当我从MAIN.ps1
调用此脚本时,如何将参数附加到调用中?我到目前为止的代码:
$ScriptPath = C:\Tmp\PAL\PAL\PAL\PAL.ps1
$Log 'C:\Users\k0530196\Documents\log.csv'
$ThresholdFile 'C:\Program Files\PAL\PAL\template.xml'
$Interval 'AUTO'
$IsOutputHtml $True
$HtmlOutputFileName '[LogFileName]_PAL_ANALYSIS_[DateTimeStamp].htm'
$IsOutputXml $True
$XmlOutputFileName '[LogFileName]_PAL_ANALYSIS_[DateTimeStamp].xml'
$AllCounterStats $False
$NumberOfThreads 1
$IsLowPriority $False
$cmd = "$ScriptPath\.\PAL.ps1"
Invoke-Expression "$cmd $Log $ThresholdFile $Interval $IsOutputHtml $HtmlOutputFileName $IsOutputXml $XmlOutputFileName $AllCounterStats $NumberOfThreads"
答案 0 :(得分:1)
在您发布的代码中,您在赋值语句中缺少几个= s。例如这一行:
$ Log'C:\ Users \ k0530196 \ Documents \ log.csv'
应该是这样的:
$ Log = 'C:\ Users \ k0530196 \ Documents \ log.csv'
您需要在尝试为变量赋值的所有实例中执行此操作。
我会这样做:
. $cmd $Log $ThresholdFile $Interval $IsOutputHtml $HtmlOutputFileName $IsOutputXml $XmlOutputFileName $AllCounterStats $NumberOfThreads