Пока я понял, что конвейерная передача этих командлетов даст мне все, что мне нужно, КРОМЕ "VLANLIST"
Get-VM | Get-VMNetworkadapter | ft VMname,NAme,SwitchName,isLegacy -Autosize
Я был бы полностью удовлетворен если бы это также могло сказать мне, с каким vlan работает сетевой адаптер для каждой виртуальной машины.
Этот командлет делает то, что я хочу: Get-VMNetworkAdapterVlan
Но, конечно, он не дает мне переключателя или islegacy values.
Я не могу найти способ связать этот командлет с тем, который я представил ранее.
Какая комбинация работает?
Вам необходимо создать настраиваемый объект со свойствами, которые вы ищете, с помощью отдельных команд:
$virtualmachines = Get-VM
$vmvlans = Get-VMNetworkAdapterVlan -VM $virtualmachines
$vmnetworkinfo = @()
foreach ($virtualmachine in $virtualmachines)
{
$virtualnetworkadapters = Get-VMNetworkAdapter -VM $virtualmachine
$vmvlans = Get-VMNetworkAdapterVlan -VM $virtualmachine
$vmproperties = New-Object -TypeName PSObject
$vmproperties | Add-Member -MemberType NoteProperty -Name VMName -Value $virtualnetworkadapters.vmname
$vmproperties | Add-Member -MemberType NoteProperty -Name Name -value $virtualnetworkadapters.Name
$vmproperties | Add-Member -MemberType NoteProperty -Name SwitchName -Value $virtualnetworkadapters.switchname
$vmproperties | Add-Member -MemberType NoteProperty -Name isLegacy -Value $virtualnetworkadapters.islegacy
$vmproperties | Add-Member -MemberType NoteProperty -name VlanList -value $vmvlans.accessvlanid
$vmnetworkinfo += $vmproperties
}
$vmnetworkinfo | ft VMname,Name,SwitchName,isLegacy,VlanList
Возможно, вам может потребоваться изменить свойство Vlan, которое вы ищете, в зависимости от вашей среды, конечно.