Get-VM对Hyper-V没有任何作用

Mic*_*ele 11 hyper-v windows-server-2008-r2 powershell-3.0

我们的服务器上有Windows 2008 R2.我们正在尝试编写PowerShell脚本来启动/停止我们的VM,但是get-vm命令不起作用.没有错误消息.该命令只是没有返回任何东西,但应该是.

代码如下所示:

$temp = Get-VM -Server usa..... | where-object {$_.State -eq 'Running'}
Run Code Online (Sandbox Code Playgroud)

我们尝试过

$temp = Get-VM -name VM-VMNameAsSeenInHyperVMgr
Run Code Online (Sandbox Code Playgroud)

并且它也没有返回任何东西.

我们安装了PowerShell的更新以获得版本3,这使得get-vm命令工作(不提供错误消息),但它仍然没有返回任何VM.

我看到论坛发布PowerShell"Get-VM"错误.

但是现在安装Hyper-V并在我在PowerShell命令行输入时显示

Get-Module  -listavailable
Run Code Online (Sandbox Code Playgroud)

在我的代码开始时我有

import-module Hyperv
Run Code Online (Sandbox Code Playgroud)

还有这个:

[system.net.dns]::GetHostEntry(ip)
Run Code Online (Sandbox Code Playgroud)

Get-Host也是如此.

我们尝试了

Enable-WindowsOptionalFeature -FeatureName Microsoft-Hyper-V -All
Run Code Online (Sandbox Code Playgroud)

但该命令未被识别为cmdlet的名称.

我尝试像这个链接禁用UAC,但它没有用.此链接显示我使用的命令:http: //www.ehloworld.com/1026

当我输入

Set-UACStatus -Computer usa...net -Enabled [$false]
Run Code Online (Sandbox Code Playgroud)

它给出了错误消息,即Set-UACStatus也未被识别为cmdlet的名称等.它也不承认Get-UACStatus.

我不确定是否还需要导入其他东西才能使用Get-VM.或者我的同事在想,也许我们正在遇到未知的AD问题.我认为如果它是Active Directory,它会给出一条关于没有权限做某事的错误信息,但事实并非如此.

Mic*_*ele 16

我想到了.

我需要以管理员身份运行PowerShell,然后Get-VM返回VM列表.我在论坛帖子Get-VM中找不到答案.