我正在寻找一种在Windows Powershell中启动虚拟机的自动方式。有没有人对我如何完成这项任务有任何意见?
到目前为止,我已经环顾四周并找不到成功的方法。
我认为这是一个标准的cmdlet形式的powershell,但我开始认为我错了这个假设。
我已经研究过使用(如果我正确理解这一点)PowerCLIs Start-VM
并且我遇到的问题是我当前没有连接到服务器,但我不相信我有一台服务器要连接到(除非我以错误的方式思考这个问题)。我现在只是尝试在本地执行此操作以检查它是否是可以使用的有效VM。
---编辑---
我希望用VMware做到这一点,但如果这意味着不花钱就可以使用Windows。
我也在使用PowerShell 2.0,似乎Start-VM似乎不适合我使用...
---编辑2 ---
有人可以进一步解释WMI如何运作吗?我使用PowerShell相对较新,我以前从未使用过WMI。
非常感谢任何帮助。谢谢!
答案 0 :(得分:1)
扩展我的评论......此代码段应该可以满足您的需求:
$VM = gwmi MSVM_ComputerSystem -filter "ElementName='serverName'" -namespace "root\virtualization" -computername "."
$VM.requeststatechange(2)
WMI非常过时(PowerShell 1.0),这适用于Server 2008 R2。您应该添加您正在使用的操作系统。如果你使用的是Server 2012,那就容易多了。只需使用Start-VM(PowerShell 4.0):
Start-VM –Name VMName
可以说比使用WMI容易得多。