我在脚本中有几行,这给了我一个问题:

Connect-VIServer "test-vcenter.test.com" -User user -Password pass
Get-VM -Name "test-vm" | Get-Stat -Stat cpu.ready.summation -Realtime | Select-Object -First 1  value | Format-List

运行此过程时,我会收到此输出:

Operation is not valid due to the current state of the object.
At :line:0 char:0

如果第二行在与vCenter连接后几秒钟运行,我将收到我期望的输出。我认为正在发生的事情是,我与vCenter的联系尚未完成。我不确定最好的等待方法或在完整的连接中检查什么。

有帮助吗?

解决方案

您可以尝试在PS中使用start-sleep命令

http://technet.microsoft.com/en-us/library/ee177002.aspx

但是 - 与所有“睡眠”功能一样,这不一定是解决正时问题的最佳方法,因为您的推回永远不会说明所有可能的延迟问题。

一个更好的解决方案是测试命令的完成(我不确定如何使用VMware CLI执行此操作)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top