L'une des applets de commande les plus utiles est Get-Member, qui affiche des informations sur l'objet .NET Framework retourné par une commande. Ces informations comprennent le type, les propriétés et les méthodes de l'objet.
Pour utiliser Get-Member, utilisez un opérateur de pipeline (|) pour envoyer les résultats d'une commande à Get-Member. Par exemple :
get-service | get-member
Cette commande indique que Get-Service retourne en fait un jeu d'objets System.ServiceProcess.ServiceController ; un pour chaque service de l'ordinateur.
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;}
Si elles semblent très techniques, ces informations sont réellement très pratiques.
-
Le nom de type (tel que « System.ServiceProcess.ServiceController ») vous indique le type d'objet .NET retourné par l'applet de commande. Pour plus d'informations sur les objets de cette classe .NET, collez le nom de type dans la zone de texte Recherche dans MSDN. La rubrique MSDN associée inclut des informations sur les propriétés et méthodes d'objets de cette classe, dont les objets retournés par Get-Service.
-
Les types Property représentent des propriétés des objets. La valeur de chaque propriété est une information sur l'objet service. Par exemple, les objets ServiceController ont une propriété CanPauseAndContinue. La description MSDN de la propriété explique que la propriété indique si le service peut être suspendu et repris.
Pour afficher la valeur d'une propriété d'un service particulier, tapez :
Par exemple :(get-service <service-name>).<property-name>
Pour afficher une liste comprenant le nom et la valeur de la propriété CanPauseAndContinue du service Avertissement (Alerter), tapez :(get-service alerter).canpauseandcontinue
Pour afficher une liste des valeurs de toutes les propriétés du service Avertissement, tapez :get-service alerter | format-list -property name, CanPauseAndContinue
Pour afficher un tableau comprenant le nom et la valeur de la propriété CanPauseAndContinue de tous les services, tapez :get-service alerter | format-list -property *
get-service | format-table -property name, CanPauseAndContinue
-
Les types Method représentent les méthodes de l'objet, autrement dit, les actions que vous pouvez effectuer sur l'objet. Par exemple, les objets ServiceController ont une méthode Stop qui vous permet d'arrêter le service.
Pour appeler une méthode d'un objet service, utilisez le format suivant (en veillant à inclure les parenthèses) :
(get-service <service-name>).<method-name>() For example, (get-service schedule).stop()
Pour plus d'informations sur la commande Get-Member, tapez :
get-help get-member -detailed