Az objektumstruktúra megtekintése (Get-Member)Viewing Object Structure (Get-Member)

Mivel az objektumok egy ilyen központi szerepkört játszanak a Windows PowerShellben, több olyan natív parancs is van, amely tetszőleges típusú objektumokkal használható.Because objects play such a central role in Windows PowerShell, there are several native commands designed to work with arbitrary object types. A legfontosabb a Get-tag parancs.The most important one is the Get-Member command.

A parancs által visszaadott objektumok elemzésének legegyszerűbb módszere a parancs kimenetének átadása a Get-member parancsmagnak.The simplest technique for analyzing the objects that a command returns is to pipe the output of that command to the Get-Member cmdlet. A Get-member parancsmag az Objektumtípus formális nevét és a tagok teljes listáját jeleníti meg.The Get-Member cmdlet shows you the formal name of the object type and a complete listing of its members. A visszaadott elemek száma esetenként túlterhelő lehet.The number of elements that are returned can sometimes be overwhelming. A Process objektum például több mint 100 tagot tartalmazhat.For example, a process object can have over 100 members.

Ha meg szeretné tekinteni egy folyamat-objektum összes tagját és a kimenetet, az összeset megtekintheti, írja be a következőt:To see all the members of a Process object and page the output so you can view all of it, type:

Get-Process | Get-Member | Out-Host -Paging

A parancs kimenete a következőhöz hasonlóan fog kinézni:The output from this command will look something like this:

TypeName: System.Diagnostics.Process

Name                           MemberType     Definition
----                           ----------     ----------
Handles                        AliasProperty  Handles = Handlecount
Name                           AliasProperty  Name = ProcessName
NPM                            AliasProperty  NPM = NonpagedSystemMemorySize
PM                             AliasProperty  PM = PagedMemorySize
VM                             AliasProperty  VM = VirtualMemorySize
WS                             AliasProperty  WS = WorkingSet
add_Disposed                   Method         System.Void add_Disposed(Event...
...

Ezt a hosszú listát a megtekinteni kívánt elemek szűrésével jobban használhatóvá tehetjük.We can make this long list of information more usable by filtering for elements we want to see. A Get-member parancs csak tulajdonságokat tartalmazó tagok listázását teszi lehetővé.The Get-Member command lets you list only members that are properties. A tulajdonságok többféle formában is elérhetők.There are several forms of properties. A parancsmag bármilyen típusú tulajdonságot megjelenít, ha a Get-member MemberType paramétert beállította az érték tulajdonságainál.The cmdlet displays properties of any type if we set the Get-Member MemberType parameter to the value Properties. Az eredményül kapott lista még mindig nagyon hosszú, de kicsit könnyebben kezelhető:The resulting list is still very long, but a bit more manageable:

PS> Get-Process | Get-Member -MemberType Properties

   TypeName: System.Diagnostics.Process

Name                       MemberType     Definition
----                       ----------     ----------
Handles                    AliasProperty  Handles = Handlecount
Name                       AliasProperty  Name = ProcessName
...
ExitCode                   Property       System.Int32 ExitCode {get;}
...
Handle                     Property       System.IntPtr Handle {get;}
...
CPU                        ScriptProperty System.Object CPU {get=$this.Total...
...
Path                       ScriptProperty System.Object Path {get=$this.Main...
...

Megjegyzés

A MemberType megengedett értékei: AliasProperty, CodeProperty, Property, NoteProperty, ScriptProperty, Properties, PropertySet, Method, CodeMethod, ScriptMethod, metódusok, ParameterizedProperty, MemberSet és mind.The allowed values of MemberType are AliasProperty, CodeProperty, Property, NoteProperty, ScriptProperty, Properties, PropertySet, Method, CodeMethod, ScriptMethod, Methods, ParameterizedProperty, MemberSet, and All.

Egy folyamathoz több mint 60 tulajdonság van.There are over 60 properties for a process. A Windows PowerShell gyakran csak néhány tulajdonságot jelenít meg bármely jól ismert objektumra vonatkozóan, ami azt mutatja, hogy az összes közülük nem felügyelhető mennyiségű információ hozható létre.The reason Windows PowerShell often shows only a handful of properties for any well-known object is that showing all of them would produce an unmanageable amount of information.

Megjegyzés

A Windows PowerShell meghatározza, Hogyan jeleníthető meg az Objektumtípus az olyan XML-fájlokban tárolt információk használatával, amelyek .format.ps1XML-ben végződő nevekkel rendelkeznek.Windows PowerShell determines how to display an object type by using information stored in XML files that have names ending in .format.ps1xml. A Process Objects, azaz a .NET System. Diagnostics. Process objektumok formázási adatai DotNetTypes.format.ps1XML-ben tárolódnak.The formatting data for process objects, which are .NET System.Diagnostics.Process objects, is stored in DotNetTypes.format.ps1xml.

Ha a Windows PowerShell által alapértelmezés szerint megjelenő tulajdonságokat is meg kell vizsgálnia, akkor a kimeneti adatokat saját kezűleg kell formázni.If you need to look at properties other than those that Windows PowerShell displays by default, you will need to format the output data yourself. Ezt a Format parancsmagok segítségével végezheti el.This can be done by using the format cmdlets.