Мне нужно получить адрес IPv4 и память с PowerShell с Get-SCVirtualMachine - PullRequest
1 голос
/ 21 февраля 2020

Следующее дает мне имя и IPv4-адрес, но не память и состояние всех виртуальных машин

Get-SCVirtualMachine | Get-SCVirtualNetworkAdapter | select name,ipv4Addresses, memory, status

Приведенная ниже команда Powershell возвращает мне имя, память и статус отключить все виртуальные машины

Get-SCVirtualMachine | ft IPv4Addresses, name, memory, status

Как получить обе таблицы в одной таблице со всей информацией?

Get-SCVirtualMachine | Get-SCVirtualNetworkAdapter | ft IPv4Addresses, name, memory, status

Сделать Мне нужно использовать команды -sc?

1 Ответ

0 голосов
/ 21 февраля 2020

Вот один из способов сделать это:

Get-SCVirtualMachine | ForEach-Object {
    $IPv4 = ($_ | Get-SCVirtualNetworkAdapter).ipv4Addresses
    $_ | Select-Object *,@{N='ipv4Addresses';E={$IPv4}}
}

Это позволяет получить все виртуальные машины с командлетом Get-SCVirtualMachine, а затем перебрать каждую из них и получить адрес IPv4.

Затем мы используем командлет Select-Object для возврата всех свойств виртуальной машины (с помощью *) вместе с созданием дополнительного свойства с использованием метода, называемого Calculated Properties , который добавляет адрес IPv4 для конечной коллекции объектов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...