Получите сетевые карты и связанные виртуальные машины в Azure. - PullRequest
0 голосов
/ 27 мая 2018

Мне нужно получить сетевые карты и связанные виртуальные машины в Azure. Я запустил следующий командлет:

Get-AzureRmNetworkInterface | Select Name, VirtualMachine

Но он генерирует только имена сетевых карт, но когда он попадает на виртуальную машинуон отображает Microsoft.Azure.Commands.Network.Models.PSResourceId, как показано на следующем рисунке. Virtual Machine Output

Пожалуйста, посоветуйте, как получить фактическое имя виртуальной машины.

1 Ответ

0 голосов
/ 28 мая 2018

Посоветуйте, пожалуйста, как получить действительное имя виртуальной машины.

Мы могли бы использовать select-object , чтобы сделать это.У меня это работает правильно.

Get-AzureRmNetworkInterface |  Select-Object -Property Name, @{Name="VMName";Expression = {$_.VirtualMachine.Id.tostring().substring($_.VirtualMachine.Id.tostring().lastindexof('/')+1)}}

enter image description here

Обновление : согласно комментарию

Если мыЧтобы получить имя виртуальной сети, мы могли бы использовать команду

Get-AzureRmVirtualNetwork

Как экспортировать результат в тот же файл CSV.Мы могли бы использовать вне файла

Get-AzureRmVirtualNetwork | select Name |out-file $filePath -Append
Get-AzureRmNetworkInterface |  Select-Object -Property Name, @{Name="VMName";Expression = {$_.VirtualMachine.Id.tostring().substring($_.VirtualMachine.Id.tostring().lastindexof('/')+1)}} |out-file $filePath -Append
...