2016-02-15 103 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 ' | '