将参数传递给 Invoke-Command
Pass arguments to Invoke-Command
这是我的脚本:
workflow Run-RemoteScript {
Param(
[Parameter(Mandatory,Position=0)][string[]]$Targets,
[Parameter(Mandatory,Position=1)][PSCredential]$Credentials,
[Parameter(Mandatory,Position=1)][String]$Path
)
foreach -parallel ($Target in $Targets) {
parallel {
"Executing on: $Target"
InlineScript {
Invoke-Command -FilePath $using:Path -ComputerName $using:Target -Credential $using:Credentials
}
}
}
}
此工作流嵌套到一个函数中。如何将参数从我的顶级函数传递到 Invoke-Command
? InlineScript{}
里面? $using:MyVar
好像不行。
查看 Invoke-Command 的帮助。有几种方法可以做到这一点,而不会增加工作流程的额外复杂性。例如,查看 -ThrottleLimit 或 -InDisconnectedSession 参数。示例 16 可能具有相关性
这是我的脚本:
workflow Run-RemoteScript {
Param(
[Parameter(Mandatory,Position=0)][string[]]$Targets,
[Parameter(Mandatory,Position=1)][PSCredential]$Credentials,
[Parameter(Mandatory,Position=1)][String]$Path
)
foreach -parallel ($Target in $Targets) {
parallel {
"Executing on: $Target"
InlineScript {
Invoke-Command -FilePath $using:Path -ComputerName $using:Target -Credential $using:Credentials
}
}
}
}
此工作流嵌套到一个函数中。如何将参数从我的顶级函数传递到 Invoke-Command
? InlineScript{}
里面? $using:MyVar
好像不行。
查看 Invoke-Command 的帮助。有几种方法可以做到这一点,而不会增加工作流程的额外复杂性。例如,查看 -ThrottleLimit 或 -InDisconnectedSession 参数。示例 16 可能具有相关性