PowerShell Format-List из разных объектов в цепочке - PullRequest
2 голосов
/ 12 июля 2011

Как вывести свойства из родительских объектов в конвейерной цепочке?

Например:

get-vm |get-vmdisk |forEach {Get-VHDInfo $ _. DiskPath} |Выберите -Property Path, ParentPath, VM.VMElementName

По сути, мне интересно это VM.VMElementName (я создал этот синтаксис).Это не непосредственный объект (который был бы от Get-VHDInfo), но дедушка (от get-vm), для которого я хочу получить значение.

1 Ответ

5 голосов
/ 12 июля 2011

Вы не можете получать значения из вышестоящих командлетов так, как хотите.Вы можете использовать foreach-object сразу после вызова get-vm и сохранить значение в переменной, а затем снова присвоить его объекту select в качестве нового вычисляемого свойства.

get-vm | foreach-object{    
    $VMElementName = $_.VMElementName   
    get-vmdisk | forEach {Get-VHDInfo $_.DiskPath} | Select Path,ParentPath,@{Name='VMElementName';Expression={$VMElementName}}
} 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...