Compartir a través de


Declaración de atributo del cmdlet

El atributo Cmdlet identifica una clase de Microsoft .NET Framework como un cmdlet y especifica el verbo y el nombre que se usa para invocar el cmdlet.

Sintaxis

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

Parámetros

VerbName (System.String) Requerido. Especifica el verbo del cmdlet. Este verbo especifica la acción realizada por el cmdlet . Para obtener más información sobre los verbos de cmdlet aprobados, consulte nombres de verbo de cmdlet y directrices de desarrollo necesarias.

NounName (System.String) Requerido. Especifica el nombre del cmdlet. Este nombre especifica el recurso en el que actúa el cmdlet. Para obtener más información sobre los nombres de cmdlet, vea de declaración de cmdlets y instrucciones de desarrollo fuertemente fomentadas.

SupportsShouldProcess (System.Boolean) Parámetro con nombre opcional. True indica que el cmdlet admite llamadas al método System.Management.Automation.Cmdlet.ShouldProcess, que proporciona al cmdlet una manera de solicitar al usuario antes de realizar una acción que cambie el sistema. False, el valor predeterminado indica que el cmdlet no admite llamadas al método System.Management.Automation.Cmdlet.ShouldProcess. Para obtener más información sobre las solicitudes de confirmación, vea Solicitar confirmación.

ConfirmImpact (System.Management.Automation.ConfirmImpact) Parámetro con nombre opcional. Especifica cuándo debe confirmarse la acción del cmdlet mediante una llamada al método System.Management.Automation.Cmdlet.ShouldProcess. System.Management.Automation.Cmdlet.ShouldProcess solo se llamará cuando el valor ConfirmImpact del cmdlet (de forma predeterminada, Medium) sea igual o mayor que el valor de la variable $ConfirmPreference. Este parámetro debe especificarse solo cuando se especifica el parámetro SupportsShouldProcess.

DefaultParameterSetName (System.String) Parámetro con nombre opcional. Especifica el conjunto de parámetros predeterminado que el entorno de ejecución de Windows PowerShell intenta usar cuando no puede determinar qué parámetro se va a usar. Observe que esta situación se puede eliminar haciendo que el parámetro único de cada parámetro establezca un parámetro obligatorio.

Hay un caso en el que Windows PowerShell no puede usar el conjunto de parámetros predeterminado incluso si se especifica un nombre de conjunto de parámetros predeterminado. El entorno de ejecución de Windows PowerShell no puede distinguir entre conjuntos de parámetros basados únicamente en el tipo de objeto. Por ejemplo, si tiene un conjunto de parámetros que toma una cadena como la ruta de acceso del archivo y otro conjunto que toma un objeto fileInfo directamente, Windows PowerShell no puede determinar qué parámetro establecer para usar en función de los valores pasados al cmdlet, ni usa el conjunto de parámetros predeterminado. En este caso, incluso si especifica un nombre de conjunto de parámetros predeterminado, Windows PowerShell inicia un mensaje de error de conjunto de parámetros ambiguo.

SupportsTransactions (System.Boolean) Parámetro con nombre opcional. True indica que el cmdlet se puede usar dentro de una transacción. Cuando se especifica True, el entorno de ejecución de Windows PowerShell agrega el parámetro UseTransaction a la lista de parámetros del cmdlet. False, el valor predeterminado, indica que el cmdlet no se puede usar dentro de una transacción.

Observaciones

  • Juntos, el verbo y el nombre se usan para identificar el cmdlet registrado e invocar el cmdlet dentro de un script.

  • Cuando se invoca el cmdlet desde la consola de Windows PowerShell, el comando es similar al siguiente:

VerbName-NounName

Los parámetros de cmdlet Confirm y WhatIf solo están disponibles para cmdlets que admiten llamadas a System.Management.Automation.Cmdlet.ShouldProcess.

Ejemplo

La siguiente definición de clase usa el atributo Cmdlet para identificar la clase de .NET Framework para un cmdlet de Get-Proc que recupera información sobre los procesos que se ejecutan en el equipo local.

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

Para obtener más información sobre el cmdlet get-proc de, consulte GetProc Tutorial.

Véase también

escribir un cmdlet de Windows PowerShell