Eines der nützlichsten Cmdlets ist Get-Member. Mit diesem Cmdlet können Informationen über das .NET Framework-Objekt angezeigt werden, das von einem Befehl zurückgegeben wird. Zu diesen Informationen zählen der Typ, die Eigenschaften und die Methoden des Objekts.
Wenn Sie Get-Member verwenden möchten, senden Sie mit einem Pipelineoperator (|) die Ergebnisse eines Befehls an Get-Member. Beispiel:
get-service | get-member
Der Anzeige des Befehls können Sie entnehmen, dass Get-Service eine Gruppe von System.ServiceProcess.ServiceController-Objekten zurückgibt – eines für jeden Dienst auf dem Computer.
TypeName: System.ServiceProcess.ServiceController Name MemberType Definition ---- ---------- ---------- Name AliasProperty Name = ServiceName add_Disposed Method System.Void add_Disposed(EventHandler value) Close Method System.Void Close() Continue Method System.Void Continue() CreateObjRef Method System.Runtime.Remoting.ObjRef CreateObjRef(Type requestedType) Dispose Method System.Void Dispose() Equals Method System.Boolean Equals(Object obj) ExecuteCommand Method System.Void ExecuteCommand(Int32 command) get_CanPauseAndContinue Method System.Boolean get_CanPauseAndContinue() get_CanShutdown Method System.Boolean get_CanShutdown() get_CanStop Method System.Boolean get_CanStop() get_Container Method System.ComponentModel.IContainer get_Container() get_DependentServices Method System.ServiceProcess.ServiceController[] get_DependentServices() get_DisplayName Method System.String get_DisplayName() get_MachineName Method System.String get_MachineName() get_ServiceHandle Method System.Runtime.InteropServices.SafeHandle get_ServiceHandle() get_ServiceName Method System.String get_ServiceName() get_ServicesDependedOn Method System.ServiceProcess.ServiceController[] get_ServicesDependedOn() get_ServiceType Method System.ServiceProcess.ServiceType get_ServiceType() get_Site Method System.ComponentModel.ISite get_Site() get_Status Method System.ServiceProcess.ServiceControllerStatus get_Status() GetHashCode Method System.Int32 GetHashCode() GetLifetimeService Method System.Object GetLifetimeService() GetType Method System.Type GetType() InitializeLifetimeService Method System.Object InitializeLifetimeService() Pause Method System.Void Pause() Refresh Method System.Void Refresh() remove_Disposed Method System.Void remove_Disposed(EventHandler value) set_DisplayName Method System.Void set_DisplayName(String value) set_MachineName Method System.Void set_MachineName(String value) set_ServiceName Method System.Void set_ServiceName(String value) set_Site Method System.Void set_Site(ISite value) Start Method System.Void Start(), System.Void Start(String[] args) Stop Method System.Void Stop() ToString Method System.String ToString() WaitForStatus Method System.Void WaitForStatus(ServiceControllerStatus desiredStatus), System.Voi... CanPauseAndContinue Property System.Boolean CanPauseAndContinue {get;} CanShutdown Property System.Boolean CanShutdown {get;} CanStop Property System.Boolean CanStop {get;} Container Property System.ComponentModel.IContainer Container {get;} DependentServices Property System.ServiceProcess.ServiceController[] DependentServices {get;} DisplayName Property System.String DisplayName {get;set;} MachineName Property System.String MachineName {get;set;} ServiceHandle Property System.Runtime.InteropServices.SafeHandle ServiceHandle {get;} ServiceName Property System.String ServiceName {get;set;} ServicesDependedOn Property System.ServiceProcess.ServiceController[] ServicesDependedOn {get;} ServiceType Property System.ServiceProcess.ServiceType ServiceType {get;} Site Property System.ComponentModel.ISite Site {get;set;} Status Property System.ServiceProcess.ServiceControllerStatus Status {get;}
Diese Informationen sehen zwar sehr technisch aus, sind jedoch sehr praktisch.
-
Der Typname (z. B. "System.ServiceProcess.ServiceController") gibt den Typ von .NET-Objekt an, der vom Cmdlet zurückgegeben wird. Wenn Sie Informationen zu den Objekten in dieser .NET-Klasse erhalten möchten, kopieren Sie den Typnamen, und fügen Sie diesen auf MSDN im Textfeld Suche ein. Im zugehörigen MSDN-Thema finden Sie Informationen zu den Eigenschaften und Methoden von Objekten dieser Klasse. Dazu zählt auch das von Get-Service zurückgegebene Objekt.
-
Property-Typen stellen Eigenschaften der Objekte dar. Die Eigenschaften enthalten Informationen über das Dienstobjekt. So weisen z. B. die ServiceController-Objekte eine CanPauseAndContinue-Eigenschaft auf. In der MSDN-Beschreibung der Eigenschaft wird erläutert, dass die Eigenschaft angibt, ob der Dienst angehalten und wieder fortgesetzt werden kann.
Wenn Sie den Wert einer Eigenschaft für einen bestimmten Dienst anzeigen möchten, geben Sie Folgendes ein:
Beispiel:(get-service <service-name>).<property-name>
Wenn Sie eine Liste mit dem Namen und Wert der CanPauseAndContinue-Eigenschaft des Warndiensts anzeigen möchten, geben Sie Folgendes ein:(get-service alerter).canpauseandcontinue
Wenn Sie eine Liste mit den Werten aller Eigenschaften des Warndiensts anzeigen möchten, geben Sie Folgendes ein:get-service alerter | format-list -property name, CanPauseAndContinue
Wenn Sie für alle Dienste eine Tabelle mit dem Namen und Wert der CanPauseAndContinue-Eigenschaft anzeigen möchten, geben Sie Folgendes ein:get-service alerter | format-list -property *
get-service | format-table -property name, CanPauseAndContinue
-
Method-Typen stellen Methoden des Objekts dar, d. h. Aktionen, die für das Objekt durchgeführt werden können. So verfügen z. B. ServiceController-Objekte über eine Stop-Methode, mit der der Dienst beendet werden kann.
Verwenden Sie zum Aufrufen einer Methode eines Dienstobjekts folgendes Format. (Geben Sie den Befehl mit den Klammern ein.)
(get-service <service-name>).<method-name>() For example, (get-service schedule).stop()
Weitere Informationen zum Befehl "Get-Member" erhalten Sie, indem Sie Folgendes eingeben:
get-help get-member -detailed