我的问题涉及 PowerCLI 的特定模块,但我希望它涉及到 PS Jobs 的更普遍的问题。我正在加载作业脚本块中的命令所需的模块,但无法识别这些命令,就好像未加载该模块一样。
我在start-job之前加载了VMware powerCLI modele,如下,但是scriptblock中的代码无法识别模块已加载,因此无法识别get-vm命令。
导入模块 VMWare.VimAutomation.core Connect-VIServer -server VIServer01 $NewJob = start-job -scriptblock {Get-VM -server VIServer01 | 选择名称,@{N="Cluster";E={Get-Cluster -VM $ }},@{N="ESXHost";E={Get-VMHost -VM $ }}}
我熟悉将参数从脚本传递到作业脚本块的需要和方法,但是如何让它识别模块已加载?另外,如果我从脚本块中加载模块,我会遇到堆栈溢出失败,我猜是由于模块的重复循环加载。