Partager via


Déclaration de l’attribut Cmdlet

L’attribut Cmdlet identifie une classe Microsoft .NET Framework en tant qu’applet de commande et spécifie le verbe et le nom utilisés pour appeler l’applet de commande.

Syntaxe

[Cmdlet("verbName", "nounName")]
[Cmdlet("verbName", "nounName", Named Parameters...)]

Paramètres

VerbName (System.String) Obligatoire. Spécifie le verbe d’applet de commande. Ce verbe spécifie l’action effectuée par l’applet de commande. Pour plus d’informations sur les verbes d’applet de commande approuvés, consultez noms de verbes d’applet de commande et Instructions de développement requises.

NounName (System.String) Obligatoire. Spécifie le nom de l’applet de commande. Ce nom spécifie la ressource sur laquelle l’applet de commande agit. Pour plus d’informations sur les noms d’applet de commande, consultez déclaration d’applet de commande et recommandations de développement fortement encouragées.

SupportsShouldProcess (paramètre nommé System.Boolean) Facultatif. True indique que l’applet de commande prend en charge les appels à la méthode System.Management.Automation.Cmdlet.ShouldProcess, qui fournit à l’applet de commande un moyen d’inviter l’utilisateur avant d’effectuer une action qui modifie le système. False, la valeur par défaut, indique que l’applet de commande ne prend pas en charge les appels à la méthode System.Management.Automation.Cmdlet.ShouldProcess. Pour plus d’informations sur les demandes de confirmation, consultez Demande de confirmation.

ConfirmImpact (System.Management.Automation.ConfirmImpact) Paramètre nommé facultatif. Spécifie quand l’action de l’applet de commande doit être confirmée par un appel à la méthode System.Management.Automation.Cmdlet.ShouldProcess. System.Management.Automation.Cmdlet.ShouldProcess ne sera appelé que lorsque la valeur ConfirmImpact de l’applet de commande (par défaut, Medium) est égale ou supérieure à la valeur de la variable $ConfirmPreference. Ce paramètre ne doit être spécifié que lorsque le paramètre SupportsShouldProcess est spécifié.

DefaultParameterSetName (System.String) Paramètre nommé facultatif. Spécifie le jeu de paramètres par défaut que le runtime Windows PowerShell tente d’utiliser lorsqu’il ne peut pas déterminer le paramètre à utiliser. Notez que cette situation peut être éliminée en rendant le paramètre unique de chaque jeu de paramètres un paramètre obligatoire.

Il existe un cas où Windows PowerShell ne peut pas utiliser le jeu de paramètres par défaut même si un nom de jeu de paramètres par défaut est spécifié. Le runtime Windows PowerShell ne peut pas faire la distinction entre les jeux de paramètres basés uniquement sur le type d’objet. Par exemple, si vous avez un jeu de paramètres qui accepte une chaîne comme chemin d’accès au fichier, et un autre jeu qui accepte un objet FileInfo directement, Windows PowerShell ne peut pas déterminer quel paramètre défini à utiliser en fonction des valeurs passées à l’applet de commande, ni n’utilise-t-il le jeu de paramètres par défaut. Dans ce cas, même si vous spécifiez un nom de jeu de paramètres par défaut, Windows PowerShell lève un message d’erreur de jeu de paramètres ambigu.

SupportsTransactions (paramètre nommé System.Boolean) Facultatif. True indique que l’applet de commande peut être utilisée dans une transaction. Lorsque True est spécifié, le runtime Windows PowerShell ajoute le paramètre UseTransaction à la liste des paramètres de l’applet de commande. False, la valeur par défaut, indique que l’applet de commande ne peut pas être utilisée dans une transaction.

Remarques

  • Ensemble, le verbe et le nom sont utilisés pour identifier votre applet de commande inscrite et appeler votre applet de commande dans un script.

  • Lorsque l’applet de commande est appelée à partir de la console Windows PowerShell, la commande ressemble à la commande suivante :

VerbName-NounName

Les paramètres d’applet de commande Confirm et WhatIf sont disponibles uniquement pour les applets de commande qui prennent en charge appels System.Management.Automation.Cmdlet.ShouldProcess.

Exemple :

La définition de classe suivante utilise l’attribut Cmdlet pour identifier la classe .NET Framework pour une applet de commande Get-Proc qui récupère des informations sur les processus en cours d’exécution sur l’ordinateur local.

[Cmdlet(VerbsCommon.Get, "Proc")]
public class GetProcCommand : Cmdlet

Pour plus d’informations sur l’applet de commande get-proc , consultez didacticiel GetProc.

Voir aussi

écriture d’une applet de commande Windows PowerShell