共用方式為


Cmdlet 屬性宣告

Cmdlet 屬性會將Microsoft .NET Framework 類別識別為 Cmdlet,並指定用來叫用 Cmdlet 的動詞和名詞。

語法

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

參數

VerbNameSystem.String) 必要。 指定 Cmdlet 動詞。 這個動詞會指定 Cmdlet 所採取的動作。 如需已核准 Cmdlet 動詞的詳細資訊,請參閱 Cmdlet 動詞名稱必要開發指導方針

NounNameSystem.String) 必要。 指定 Cmdlet 名詞。 這個名詞會指定 Cmdlet 所依據的資源。 如需 Cmdlet 名詞的詳細資訊,請參閱 Cmdlet 宣告強烈建議開發指導方針

SupportsShouldProcessSystem.Boolean) 選擇性具名參數。 True 表示 Cmdlet 支援呼叫 System.Management.Automation.Cmdlet.ShouldProcess 方法,此方法會提供 Cmdlet 的方法,以在執行變更系統的動作之前提示使用者。 False,預設值表示 Cmdlet 不支援呼叫 System.Management.Automation.Cmdlet.ShouldProcess 方法。 如需確認要求的詳細資訊,請參閱 要求確認

ConfirmImpactSystem.Management.Automation.ConfirmImpact) 選擇性具名參數。 指定呼叫 System.Management.Automation.Cmdlet.ShouldProcess 方法時,應該確認 Cmdlet 的動作。 只有在 Cmdlet 的 ConfirmImpact 值等於或大於 $ConfirmPreference 變數的值時,才會呼叫 system.Management.Automation.Cmdlet.Cmdlet.ShouldProcess。 只有當指定了 SupportsShouldProcess 參數時,才應該指定此參數。

DefaultParameterSetNameSystem.String) 選擇性具名參數。 指定當 Windows PowerShell 執行時間無法判斷要使用的參數集時,Windows PowerShell 運行時間嘗試使用的預設參數集。 請注意,藉由讓每個參數的唯一參數設定強制參數,即可消除這種情況。

即使指定了預設參數集名稱,Windows PowerShell 仍無法使用預設參數集。 Windows PowerShell 運行時間無法只根據物件類型區分參數集。 例如,如果您有一個參數集,接受字串做為檔案路徑,而另一個集合會直接採用 FileInfo 物件,Windows PowerShell 就無法根據傳遞至 Cmdlet 的值來判斷要使用的參數,也不會使用預設參數集。 在此情況下,即使您指定預設參數集名稱,Windows PowerShell 仍會擲回模棱兩可的參數集錯誤訊息。

SupportsTransactionsSystem.Boolean) 選擇性具名參數。 True 表示 Cmdlet 可用於交易中。 指定 True 時,Windows PowerShell 運行時間會將 UseTransaction 參數新增至 Cmdlet 的參數清單。 False,預設值表示 Cmdlet 無法在交易中使用。

備註

  • 一起,動詞和名詞可用來識別已註冊的 Cmdlet,並在腳本中叫用您的 Cmdlet。

  • 從 Windows PowerShell 控制台叫用 Cmdlet 時,命令會類似下列命令:

VerbName-NounName

ConfirmWhatIf Cmdlet 參數僅適用於支援 System.Management.Automation.Cmdlet.ShouldProcess 呼叫的 Cmdlet。

範例

下列類別定義會使用 Cmdlet 屬性來識別 Get-Proc Cmdlet 的 .NET Framework 類別,以擷取本機計算機上執行之進程的相關信息。

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

如需 get-Proc Cmdlet 的詳細資訊,請參閱 GetProc 教學課程

另請參閱

撰寫 Windows PowerShell Cmdlet