2016-02-15 73 views
0

这是我的代码自定义输出PsObject

$Return = New-Object PSObject 

Add-Member -InputObject $Return -MemberType NoteProperty -Name Source -Value "Test1" 
Add-Member -InputObject $Return -MemberType NoteProperty -Name FileMQ -Value "Test2" 
Add-Member -InputObject $Return -MemberType NoteProperty -Name Listener -Value "Test3" 

我想输出$返回这样的:

Source : Test1 | FileMQ : Test2 | Listener : Test3 

我知道我能做到这样的:

"Source : $($return.Source) | FileMQ : $($return.FileMQ) | Listener : $($return.Listener)" 

但我肯定有更多的自动和有效的方式...因为如果我有太多的成员,这将是困难的。谁能帮我?

我使用Powershell V4。

感谢

+0

'$返回|%{($ _ PSObject。属性|%{'{0}:{1}' - f $ _。Name,$ _。Value}) - join'| “}' – PetSerAl

回答

1

你可以访问隐藏psobject成员集属性列举你的对象的所有属性,构建字符串,像这样:

($Return.psobject.Properties |% { '{0} : {1}' -f $_.Name,$_.Value }) -join ' | '