最も有用なコマンドレットの 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>
    次に例を示します。

    (get-service alerter).canpauseandcontinue
    Alerter サービスの CanPauseAndContinue プロパティの名前と値を一覧表示するには、次のように入力します。

    get-service alerter | format-list -property name, CanPauseAndContinue
    Alerter サービスのすべてのプロパティの値を一覧表示するには、次のように入力します。

    get-service alerter | format-list -property *
    すべてのサービスの CanPauseAndContinue プロパティの名前と値を表形式で表示するには、次のように入力します。

    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




目次