Partilhar via


Cmdlet Attribute Declaration (Declaração do Atributo Cmdlet)

O atributo Cmdlet identifica uma classe do Microsoft .NET Framework como um cmdlet e especifica o verbo e o substantivo usados para invocar o cmdlet.

Sintaxe

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

Parâmetros

VerbName (System.String) Obrigatório. Especifica o verbo do cmdlet. Este verbo especifica a ação executada pelo cmdlet. Para obter mais informações sobre verbos de cmdlet aprovados, consulte Cmdlet Verb Names e Required Development Guidelines.

NounName (System.String) Obrigatório. Especifica o substantivo do cmdlet. Esse substantivo especifica o recurso no qual o cmdlet atua. Para obter mais informações sobre substantivos de cmdlet, consulte Declaração de Cmdlet e Diretrizes de desenvolvimento fortemente encorajadas.

SupportsShouldProcess (System.Boolean) Parâmetro nomeado opcional. True indica que o cmdlet oferece suporte a chamadas para o método System.Management.Automation.Cmdlet.ShouldProcess, que fornece ao cmdlet uma maneira de avisar o usuário antes que uma ação que altere o sistema seja executada. False, o valor padrão, indica que o cmdlet não oferece suporte a chamadas para o método System.Management.Automation.Cmdlet.ShouldProcess. Para obter mais informações sobre solicitações de confirmação, consulte Solicitando confirmação.

ConfirmImpact (System.Management.Automation.ConfirmImpact) Parâmetro nomeado opcional. Especifica quando a ação do cmdlet deve ser confirmada por uma chamada para o método System.Management.Automation.Cmdlet.ShouldProcess. System.Management.Automation.Cmdlet.ShouldProcess só será chamado quando o valor ConfirmImpact do cmdlet (por padrão, Medium) for igual ou maior que o valor da variável $ConfirmPreference. Este parâmetro deve ser especificado somente quando o parâmetro SupportsShouldProcess é especificado.

DefaultParameterSetName (System.String) Parâmetro nomeado opcional. Especifica o conjunto de parâmetros padrão que o tempo de execução do Windows PowerShell tenta usar quando não consegue determinar qual conjunto de parâmetros usar. Observe que essa situação pode ser eliminada tornando o parâmetro exclusivo de cada parâmetro definido um parâmetro obrigatório.

Há um caso em que o Windows PowerShell não pode usar o conjunto de parâmetros padrão, mesmo que um nome de conjunto de parâmetros padrão seja especificado. O tempo de execução do Windows PowerShell não pode distinguir entre conjuntos de parâmetros com base apenas no tipo de objeto. Por exemplo, se você tiver um conjunto de parâmetros que usa uma cadeia de caracteres como caminho do arquivo e outro conjunto que usa um objeto FileInfo diretamente, o Windows PowerShell não poderá determinar qual conjunto de parâmetros usar com base nos valores passados para o cmdlet, nem usará o conjunto de parâmetros padrão. Nesse caso, mesmo se você especificar um nome de conjunto de parâmetros padrão, o Windows PowerShell lançará uma mensagem de erro ambígua de conjunto de parâmetros.

SupportsTransactions (System.Boolean) Parâmetro nomeado opcional. True indica que o cmdlet pode ser usado em uma transação. Quando True é especificado, o tempo de execução do Windows PowerShell adiciona o parâmetro UseTransaction à lista de parâmetros do cmdlet. False, o valor padrão, indica que o cmdlet não pode ser usado em uma transação.

Observações

  • Juntos, o verbo e o substantivo são usados para identificar seu cmdlet registrado e invocar seu cmdlet dentro de um script.

  • Quando o cmdlet é invocado a partir do console do Windows PowerShell, o comando é semelhante ao seguinte:

VerbName-NounName

Os parâmetros de cmdlet Confirm e WhatIf estão disponíveis apenas para cmdlets que suportam chamadas de System.Management.Automation.Cmdlet.ShouldProcess.

Exemplo

A definição de classe a seguir usa o atributo Cmdlet para identificar a classe .NET Framework para um cmdlet Get-Proc que recupera informações sobre os processos em execução no computador local.

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

Para obter mais informações sobre o cmdlet Get-Proc, consulte GetProc Tutorial.

Ver também

Escrevendo um cmdlet do Windows PowerShell