Declaração de atributo de cmdlet
O atributo Cmdlet identifica uma classe 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. Esse verbo especifica a ação tomada pelo cmdlet . Para obter mais informações sobre verbos de cmdlet aprovados, consulte Nomes de verbos do cmdlet e Diretrizes de desenvolvimento necessárias.
NounName
(System.String) Obrigatório. Especifica o substantivo do cmdlet. Esse substantivo especifica o recurso em que o cmdlet atua. Para obter mais informações sobre substantivos de cmdlet, consulte Declaração de cmdlet e Diretrizes de desenvolvimento fortemente incentivadas.
SupportsShouldProcess
(System.Boolean) Parâmetro nomeado opcional. True
indica que o cmdlet dá suporte a chamadas para o método System.Management.Automation.Cmdlet.ShouldProcess, que fornece ao cmdlet uma maneira de solicitar ao usuário antes que uma ação que altera o sistema seja executada. False
, o valor padrão, indica que o cmdlet não dá 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, Médio) for igual ou maior que o valor da $ConfirmPreference
variável. Esse parâmetro deve ser especificado somente quando SupportsShouldProcess
o parâmetro é especificado.
DefaultParameterSetName
(System.String) Parâmetro nomeado opcional. Especifica o conjunto de parâmetros padrão que o Windows PowerShell runtime tenta usar quando não pode determinar qual parâmetro deve ser usado. Observe que essa situação pode ser eliminada tornando o parâmetro exclusivo de cada parâmetro definido como um parâmetro obrigatório.
Há um caso em que Windows PowerShell pode usar o conjunto de parâmetros padrão, mesmo se um nome de conjunto de parâmetros padrão for especificado. O Windows PowerShell runtime 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 o caminho do arquivo e outro conjunto que usa um objeto FileInfo diretamente, o Windows PowerShell não poderá determinar qual parâmetro será usado com base nos valores passados para o cmdlet, nem usará o conjunto de parâmetros padrão. Nesse caso, mesmo que você especifique um nome de conjunto de parâmetros padrão, Windows PowerShell uma mensagem de erro do conjunto de parâmetros ambíguo.
SupportsTransactions
(System.Boolean) Parâmetro nomeado opcional. True
indica que o cmdlet pode ser usado em uma transação. Quando True
é especificado, o Windows PowerShell runtime 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.
Comentários
Juntos, o verbo e o substantivo são usados para identificar o cmdlet registrado e invocar o cmdlet em um script.
Quando o cmdlet é invocado do console Windows PowerShell, o comando é semelhante ao seguinte comando:
VerbName-NounName
- Todos os cmdlets que alteram recursos fora do Windows PowerShell devem incluir a palavra-chave quando o atributo Cmdlet é declarado, o que permite que o cmdlet chame o método
SupportsShouldProcess
System.Management.Automation.Cmdlet.ShouldProcess antes que o cmdlet execute sua ação. Se a chamada System.Management.Automation.Cmdlet.ShouldProcess retornarfalse
, a ação não deverá ser tomada. Para obter mais informações sobre as solicitações de confirmação geradas pela chamada System.Management.Automation.Cmdlet.ShouldProcess, consulte Solicitando confirmação.
Os parâmetros de cmdlet e estão disponíveis apenas para cmdlets que suportam Confirm
WhatIf
chamadas 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 Tutorial do GetProc.
Consulte Também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de