我们正在尝试编写一个 powershell 脚本来启动/停止我们的 vm,但该get-vm
命令不起作用。错误消息是
get-vm: the term 'get-vm' is not recognized as the name of a cmdlet, function, script file, or operable program.
代码如下:
$temp = Get-VM -Server usa..... | where-object {$_.State -eq 'Running'}
我们安装了 powershell 更新以获取版本 3,但它仍然不起作用,但错误消息略有改变,变为我上面列出的那个。
但hyperV
现在已经安装完毕,当我输入以下内容时就会显示:
Get-Module -listavailable
在我的代码开始时我有:
if(!Get-Module -Name HyperV)){import-module Hyperv}
还有这个:
[system.net.dns]::GetHostEntry(ip)
Get-Host 也可以
我们尝试了
Enable-WindowsOptionalFeature -FeatureName Microsoft-Hyper-V -All
但它也没有被识别为 cmdlet 的名称等等。
我尝试通过此链接 pshyperv.codeplex.com/discussions/359174 禁用 UAC,但没有成功。此链接显示了我使用的命令: http://www.ehloworld.com/1026
当我输入:
Set-UACStatus -Computer usa...net -Enabled [$false]
它给出了错误消息Set-UACStatus wasn't recognized as the name of a cmdlet
,等等。它也无法识别 Get-UACStatus。
我不确定是否需要导入其他东西才能使用 Get-VM?
答案1
我找到了答案。我需要以管理员身份运行 powershell,然后 get-VM 返回虚拟机列表。我找到了答案微软技术网。