在powershell中使用工作流会话时,大多数常见命令似乎都消失了:
PS P:> $session = New-PSWorkflowSession -ThrottleLimit 3
PS P:> Invoke-Command $session {Write-Output "test"}
The term 'Write-Output' is not recognized as the name of a cmdlet, function, script
file, or operable program. Check the spelling of the name, or if a path was included,
verify that the path is correct and try again.
+ CategoryInfo : ObjectNotFound: (Write-Output:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
+ PSComputerName : localhost
如何使工作流中通常可用的所有常用命令在会话中可用?
由于您使用的是工作流会话,因此您需要将命令放入工作流中。
$session = New-PSWorkflowSession -ThrottleLimit 3
Invoke-Command $session {
workflow test {
Write-Output -Input "test"
}
test
}
有关更多信息,请查看PowerShell工作流:Windows PowerShell工作流的限制和高级体系结构(第1部分)