最も有用なコマンドレットの 1 つが、コマンドから返される .NET Framework オブジェクトに関する情報を表示する Get-Member です。この情報には、オブジェクトの型、プロパティ、およびメソッドが含まれます。
Get-Member を使用するには、パイプライン演算子 (|) を使用して、コマンドの結果を Get-Member に送信します。次にその例を示します。
get-service | get-member
このコマンドを実行すると、System.ServiceProcess.ServiceController オブジェクトのセット (コンピューター上の各サービスにつき 1 つ) が Get-Service から返されていることがわかります。
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;}
この情報は非常に技術的に見えますが、実際は非常に実用的です。
-
typename (たとえば "System.ServiceProcess.ServiceController") は、コマンドレットから返される .NET オブジェクトの型を示します。この .NET クラスに属するオブジェクトに関する情報を参照するには、MSDN の検索用テキスト ボックスに型名を貼り付けます。Get-Service から返されるオブジェクトを含め、このクラスのオブジェクトのプロパティおよびメソッドに関する情報が、対応する MSDN トピックで説明されています。
-
Property 型は、オブジェクトのプロパティを表します。各プロパティの値は、サービス オブジェクトに関する情報です。たとえば、ServiceController オブジェクトには、CanPauseAndContinue プロパティがあります。MSDN の解説では、このプロパティはサービスの一時停止と再開を行うことができるかどうかを示すと説明されています。
特定のサービスのプロパティの値を一覧表示するには、次のように入力します。
次に例を示します。(get-service <service-name>).<property-name>
Alerter サービスの CanPauseAndContinue プロパティの名前と値を一覧表示するには、次のように入力します。(get-service alerter).canpauseandcontinue
Alerter サービスのすべてのプロパティの値を一覧表示するには、次のように入力します。get-service alerter | format-list -property name, CanPauseAndContinue
すべてのサービスの CanPauseAndContinue プロパティの名前と値を表形式で表示するには、次のように入力します。get-service alerter | format-list -property *
get-service | format-table -property name, CanPauseAndContinue
-
Method 型は、オブジェクトのメソッド、つまり、オブジェクトに対して実行できるアクションを表します。たとえば、ServiceController オブジェクトには、サービスを停止するための Stop メソッドがあります。
サービス オブジェクトのメソッドを呼び出すには、次の書式を使用します。小かっこは必ず使用してください。
(get-service <service-name>).<method-name>() For example, (get-service schedule).stop()
Get-Member コマンドの詳細を参照するには、次のように入力してください。
get-help get-member -detailed