You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过PowerCLI快速获取关联指定VLAN的VM名称?

获取关联指定VLAN的VM列表(PowerCLI优化方案)

核心解决思路

Get-NetworkAdapter返回的网络适配器对象自带Parent属性,该属性直接指向对应的虚拟机对象,通过它可以快速提取VM名称,无需额外遍历查询。

优化后的命令示例

直接筛选目标VLAN的网卡,并关联输出VM名称:

# 替换"目标VLAN名称"为你要查询的VLAN名称
Get-NetworkAdapter | Where-Object { $_.NetworkName -eq "目标VLAN名称" } | 
    Select-Object @{Label='VM名称';Expression={$_.Parent.Name}}, 
                  @{Label='网卡名称';Expression={$_.Name}}, 
                  @{Label='VLAN名称';Expression={$_.NetworkName}}

如果需要批量查询多个VLAN,可将目标VLAN存入数组后筛选:

$targetVlans = @("VLAN-001", "VLAN-002", "VLAN-003")
Get-NetworkAdapter | Where-Object { $targetVlans -contains $_.NetworkName } | 
    Select-Object @{Label='VM名称';Expression={$_.Parent.Name}}, 
                  @{Label='网卡名称';Expression={$_.Name}}, 
                  @{Label='VLAN名称';Expression={$_.NetworkName}} |
    Sort-Object 'VLAN名称', 'VM名称'

性能优势说明

这种方式避开了逐个遍历VM再查询网卡的O(n)低效逻辑,直接利用PowerCLI对象模型的关联关系,一次性获取所有网卡并筛选,在VM数量数千、VLAN数量上百的场景下,运行效率会大幅提升。

内容的提问来源于stack exchange,提问作者Peter Turner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 19:25:26