请提供一个简单的语法问题。我做错了。请帮助:
这列出了正在运行和已暂停的VM的VM VID
Get-Counter '\Hyper-V VM VID Partition(*)\*'
这列出了所有正在运行的VM:
$g = Get-VM | Where-Object {$_.State -eq 'Running'} | Select-Object -Property Name
我的猜测是类似Get-Counter '\Hyper-V $g VID Partition(*)\*'
的方法可能有用,但是语法不正确。如何将两者结合起来并获得仅用于运行VM的VM VID?
我认为您可能需要使用ForEach-Object
。类似于:
$g = Get-VM | Where-Object {$_.State -eq 'Running'} |
ForEach-Object { Get-Counter -ComputerName $_.Name -Counter '\Hyper-V VM VID Partition(*)\*'}
无法自己尝试。.>
我终于意识到,无法在单个命令中执行此操作。所以这就是我解决的方法: