Freigeben über


Attributdeklaration: Cmdlet

Das Cmdlet-Attribut identifiziert eine Microsoft .NET Framework-Klasse als Cmdlet und gibt das Verb und das Substantiv an, das zum Aufrufen des Cmdlets verwendet wird.

Syntax

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

Die Parameter

VerbName (System.String) Erforderlich. Gibt das Cmdlet-Verb an. Dieses Verb gibt die vom Cmdlet ausgeführte Aktion an. Weitere Informationen zu genehmigten Cmdlet-Verben finden Sie unter Cmdlet Verb Names und Erforderliche Entwicklungsrichtlinien.

NounName (System.String) Erforderlich. Gibt das Cmdlet-Substantiv an. Dieses Substantiv gibt die Ressource an, für die das Cmdlet fungiert. Weitere Informationen zu Cmdlet-Substantiven finden Sie unter Cmdlet-Deklaration und stark geförderte Entwicklungsrichtlinien.

SupportsShouldProcess (System.Boolean) Optionaler benannter Parameter. True gibt an, dass das Cmdlet Aufrufe der System.Management.Automation.Cmdlet.ShouldProcess-Methode unterstützt, die dem Cmdlet eine Möglichkeit bietet, den Benutzer vor einer Aktion aufzufordern, die das System ändert. False, der Standardwert, gibt an, dass das Cmdlet keine Aufrufe der System.Management.Automation.Cmdlet.ShouldProcess-Methode unterstützt. Weitere Informationen zu Bestätigungsanforderungen finden Sie unter Anfordern einer Bestätigung.

ConfirmImpact (System.Management.Automation.ConfirmImpact) Optionaler benannter Parameter. Gibt an, wann die Aktion des Cmdlets durch einen Aufruf der System.Management.Automation.Cmdlet.ShouldProcess-Methode bestätigt werden soll. System.Management.Automation.Cmdlet.ShouldProcess wird nur aufgerufen, wenn der ConfirmImpact-Wert des Cmdlets (standardmäßig Mittel) gleich oder größer als der Wert der variablen $ConfirmPreference ist. Dieser Parameter sollte nur angegeben werden, wenn der parameter SupportsShouldProcess angegeben wird.

DefaultParameterSetName (System.String) Optionaler benannter Parameter. Gibt den Standardparametersatz an, den die Windows PowerShell-Laufzeit zu verwenden versucht, wenn er nicht bestimmen kann, welcher Parameter verwendet werden soll. Beachten Sie, dass diese Situation beseitigt werden kann, indem der eindeutige Parameter jedes Parameters einen obligatorischen Parameter festgelegt wird.

Es gibt einen Fall, in dem Windows PowerShell den Standardparametersatz nicht verwenden kann, auch wenn ein Standardparametersatzname angegeben ist. Die Windows PowerShell-Laufzeit kann nicht zwischen Parametersätzen unterscheiden, die ausschließlich auf dem Objekttyp basieren. Wenn Sie z. B. einen Parametersatz haben, der eine Zeichenfolge als Dateipfad akzeptiert, und ein anderer Satz, der ein FileInfo- objekt direkt verwendet, kann Windows PowerShell nicht bestimmen, welcher Parameter basierend auf den an das Cmdlet übergebenen Werten verwendet werden soll, oder verwendet den Standardparametersatz. In diesem Fall löst Windows PowerShell auch dann eine Fehlermeldung aus, wenn Sie einen Standardparametersatznamen angeben.

SupportsTransactions (System.Boolean) Optionaler benannter Parameter. True gibt an, dass das Cmdlet innerhalb einer Transaktion verwendet werden kann. Wenn True angegeben wird, fügt die Windows PowerShell-Laufzeit der Parameterliste des Cmdlets den parameter UseTransaction hinzu. False, der Standardwert, gibt an, dass das Cmdlet nicht innerhalb einer Transaktion verwendet werden kann.

Bemerkungen

  • Zusammen werden das Verb und das Substantiv verwendet, um Das registrierte Cmdlet zu identifizieren und das Cmdlet in einem Skript aufzurufen.

  • Wenn das Cmdlet über die Windows PowerShell-Konsole aufgerufen wird, ähnelt der Befehl dem folgenden Befehl:

VerbName-NomenName

Die Parameter Confirm und WhatIf Cmdlets sind nur für Cmdlets verfügbar, die System.Management.Automation.Cmdlet.ShouldProcess Aufrufen unterstützen.

Beispiel

Die folgende Klassendefinition verwendet das Cmdlet-Attribut, um die .NET Framework-Klasse für ein Get-Proc--Cmdlet zu identifizieren, das Informationen zu den prozessen abruft, die auf dem lokalen Computer ausgeführt werden.

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

Weitere Informationen zum cmdlet Get-Proc finden Sie unter GetProc Tutorial.

Siehe auch

Schreiben eines Windows PowerShell-Cmdlets