web-dev-qa-db-ja.com

PowershellSystem.Objectからフィールドを選択する方法-ExchangeOnline PowerShell

質問:データを選択するのに苦労している、明らかに単純なPowerShellシステムオブジェクトがあります。誰かがこのオブジェクトのフィールドを選択/展開する方法を説明するのを手伝ってもらえますか?

より詳しい情報:

を使用してExchangeOnline環境からオブジェクト(パブリックフォルダー)を選択しました

Get-MailPublicfolder

これで、オブジェクトは変数$ pfに格納されます

$pf.getType()

IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     True     ArrayList                                System.Object

私がこれをするとき

$pf | fl * 

次の出力が得られます

EmailAddressPolicyEnabled              : False
PrimarySmtpAddress                     : [email protected]
RecipientType                          : PublicFolder
RecipientTypeDetails                   : PublicFolder
DisplayName                            : Metro West

等々。

しかし、私がこれを行うと

$pf.displayName

または

$pf | select displayName

何も返ってこない

私がこれをするとき

$pf | select * 


ClassId2e4f51ef21dd47e99d3c952918aff9cd : 033ecb2bc07a4d43b5ef94ed5a35d280
pageHeaderEntry                         :
pageFooterEntry                         :
autosizeInfo                            :
shapeInfo                               : Microsoft.PowerShell.Commands.Internal.Format.ListViewHeaderInfo
groupingEntry                           :

ClassId2e4f51ef21dd47e99d3c952918aff9cd : 9e210fe47d09416682b841769c78b8a3
shapeInfo                               :
groupingEntry                           :

ClassId2e4f51ef21dd47e99d3c952918aff9cd : 27c87ef9bbda4f709f6b4002fa4af63c
formatEntryInfo                         : Microsoft.PowerShell.Commands.Internal.Format.ListViewEntry
outOfBand                               : False
writeStream                             : None

ClassId2e4f51ef21dd47e99d3c952918aff9cd : 4ec4f0187cb04f4cb6973460dfe252df
groupingEntry                           :

ClassId2e4f51ef21dd47e99d3c952918aff9cd : cf522b78d86c486691226b40aa69e95c
groupingEntry                           :

この

$pf | gm 


   TypeName: Microsoft.PowerShell.Commands.Internal.Format.FormatStartData

Name                                    MemberType Definition
----                                    ---------- ----------
Equals                                  Method     bool Equals(System.Object obj)
GetHashCode                             Method     int GetHashCode()
GetType                                 Method     type GetType()
ToString                                Method     string ToString()
autosizeInfo                            Property   Microsoft.PowerShell.Commands.Internal.Format.AutosizeInfo, System.Managem...
ClassId2e4f51ef21dd47e99d3c952918aff9cd Property   string ClassId2e4f51ef21dd47e99d3c952918aff9cd {get;}
groupingEntry                           Property   Microsoft.PowerShell.Commands.Internal.Format.GroupingEntry, System.Manage...
pageFooterEntry                         Property   Microsoft.PowerShell.Commands.Internal.Format.PageFooterEntry, System.Mana...
pageHeaderEntry                         Property   Microsoft.PowerShell.Commands.Internal.Format.PageHeaderEntry, System.Mana...
shapeInfo                               Property   Microsoft.PowerShell.Commands.Internal.Format.ShapeInfo, System.Management...


   TypeName: Microsoft.PowerShell.Commands.Internal.Format.GroupStartData

Name                                    MemberType Definition
----                                    ---------- ----------
Equals                                  Method     bool Equals(System.Object obj)
GetHashCode                             Method     int GetHashCode()
GetType                                 Method     type GetType()
ToString                                Method     string ToString()
ClassId2e4f51ef21dd47e99d3c952918aff9cd Property   string ClassId2e4f51ef21dd47e99d3c952918aff9cd {get;}
groupingEntry                           Property   Microsoft.PowerShell.Commands.Internal.Format.GroupingEntry, System.Manage...
shapeInfo                               Property   Microsoft.PowerShell.Commands.Internal.Format.ShapeInfo, System.Management...


   TypeName: Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData

Name                                    MemberType Definition
----                                    ---------- ----------
Equals                                  Method     bool Equals(System.Object obj)
GetHashCode                             Method     int GetHashCode()
GetType                                 Method     type GetType()
ToString                                Method     string ToString()
ClassId2e4f51ef21dd47e99d3c952918aff9cd Property   string ClassId2e4f51ef21dd47e99d3c952918aff9cd {get;}
formatEntryInfo                         Property   Microsoft.PowerShell.Commands.Internal.Format.FormatEntryInfo, System.Mana...
outOfBand                               Property   bool outOfBand {get;set;}
writeStream                             Property   Microsoft.PowerShell.Commands.Internal.Format.WriteStreamType, System.Mana...


   TypeName: Microsoft.PowerShell.Commands.Internal.Format.GroupEndData

Name                                    MemberType Definition
----                                    ---------- ----------
Equals                                  Method     bool Equals(System.Object obj)
GetHashCode                             Method     int GetHashCode()
GetType                                 Method     type GetType()
ToString                                Method     string ToString()
ClassId2e4f51ef21dd47e99d3c952918aff9cd Property   string ClassId2e4f51ef21dd47e99d3c952918aff9cd {get;}
groupingEntry                           Property   Microsoft.PowerShell.Commands.Internal.Format.GroupingEntry, System.Manage...


   TypeName: Microsoft.PowerShell.Commands.Internal.Format.FormatEndData

Name                                    MemberType Definition
----                                    ---------- ----------
Equals                                  Method     bool Equals(System.Object obj)
GetHashCode                             Method     int GetHashCode()
GetType                                 Method     type GetType()
ToString                                Method     string ToString()
ClassId2e4f51ef21dd47e99d3c952918aff9cd Property   string ClassId2e4f51ef21dd47e99d3c952918aff9cd {get;}
groupingEntry                           Property   Microsoft.PowerShell.Commands.Internal.Format.GroupingEntry, System.Manage...
1
Jon

これを行う:

$pf = Get-MailPublicfolder

これをしないでください:

$pf = Get-MailPublicfolder | fl
# or
$pf = Get-MailPublicfolder | Format-List

どうして?結果をFormat-Listに渡すと、Get-MailPublicfolderによって返されるMailPublicFolderではなく、フォーマットされた文字列オブジェクトになります。そのため、gmを実行しているときにこれらのメンバーが表示されます。

これを行うことでアウトかどうかをテストでき、このオブジェクトには同じメンバーが含まれます

$a = Get-ChildItem | Format-List
$a | Get-Member
3
g.sulman

私は自分の側でテストします、すべてがうまくいきます。 enter image description here

1
Jayce Yang