提供者 Cmdlet 隨附一組靜態參數,可供支援 Cmdlet 的所有提供者使用,以及使用者為提供者 Cmdlet 的特定靜態參數指定特定值時所新增的動態參數。
提供者 Cmdlet 靜態參數
靜態參數是由 Windows PowerShell 所定義。 Windows PowerShell 會實作一組大型參數,以提供所有提供者的一致性,並提供更簡單的開發體驗。 這些參數的範例包括 Get-Item Cmdlet 的 LiteralPath、Exclude和 Include 參數。 您可以覆寫一組較小的這些參數,以提供您提供者專屬的動作。 這些參數的範例包括 Set-Item Cmdlet 的 Path 和 Value 參數。 以下是可覆寫提供者 Cmdlet 的參數清單。
Clear-Content Cmdlet 您可以藉由實作 System.Management.Automation.Provider.IContentCmdletProvider.ClearContent* 方法,定義提供者如何使用傳遞至 Clear-Content Cmdlet Path 參數的值。
Clear-Item Cmdlet 您可以藉由實作 System.Management.Automation.Provider.ItemCmdletProvider.ClearItem* 方法,來定義提供者如何使用傳遞至 Clear-Item Cmdlet Path 參數的值。
Clear-ItemProperty Cmdlet 您可以藉由實作 Clear-ItemPropertySystem.Management.Automation.Provider.IPropertyCmdletProvider.ClearProperty* 方法,定義提供者如何使用傳遞至 Path 和 Name cmdlet 參數的值。
Copy-Item Cmdlet 您可以藉由實作 System.Management.Automation.Provider.ContainerCmdletProvider.CopyItem 方法,定義提供者如何使用傳遞至 Path、Destination和 Recurse Cmdlet Copy-Item 參數的值。
Get-ChildItems Cmdlet 您可以藉由實作 System.Management.Automation.Provider.ContainerCm,來定義提供者如何使用傳遞至 Get-ChildItem Cmdlet Path 和 Recurse 參數的值dletProvider.GetChildItems* 和 System.Management.Automation.Provider.ContainerCmdletProvider.GetChildNames* 方法。
Get-Content Cmdlet 您可以實作 System.Management.Automation.Provider.IContentCmdletProvider.GetContentReader* 方法,定義提供者如何使用傳遞至 Get-Content Cmdlet Path 參數的值。
Get-Item Cmdlet 您可以實作 System.Management.Automation.Provider.ItemCmdletProvider.GetItem* 方法,定義提供者如何使用傳遞至 Get-Item Cmdlet Path 參數的值。
Get-ItemProperty Cmdlet 您可以藉由實作 System.Management.Automation.Provider.IPropertyCmdlet.GetProperty* 方法,定義提供者如何使用傳遞至 Get-ItemProperty Cmdlet Path 和 Name 參數的值。
Invoke-Item Cmdlet 您可以藉由實作 System.Management.Automation.Provider.ItemCmdletProvider.InvokeDefaultAction* 方法,定義提供者如何使用傳遞至 Invoke-Item Cmdlet Path 參數的值。
Move-Item Cmdlet 您可以實作 System.Management.Automation.Provider.NavigationCmdletProvider.MoveItem* 方法,來定義提供者如何使用傳遞至 PathDestination 和 Move-Item Cmdlet 參數的值。
New-Item Cmdlet 您可以藉由實作 System.Management.Automation.Provider.ContainerCmdletProvider.NewItem* 方法,定義提供者如何使用傳遞至 Path、ItemType和 Value Cmdlet New-Item 參數的值。
New-ItemProperty Cmdlet 您可以藉由實作 Microsoft.PowerShell.Commands.RegistryProvider.NewProperty* 方法,來定義提供者如何使用傳遞至 Path、Name、PropertyType和 Value Cmdlet New-ItemProperty 參數的值。
Remove-Item 您可以藉由實作 System.Management.Automation.Provider.ContainerCmdletProvider.RemoveItem* 方法,定義提供者如何使用傳遞至 Remove-Item Cmdlet Path 和 Recurse 參數的值。
Remove-ItemProperty 您可以藉由實作 Remove-ItemPropertySystem.Management.Automation.Provider.IDynamicPropertyCmdlet.RemoveProperty* 方法,定義提供者如何使用傳遞至 Path 和 Name 參數的值。
Rename-Item Cmdlet 您可以實作 System.Management.Automation.Provider.ContainerCmdletProvider.RenameItem* 方法,來定義提供者如何使用傳遞至 Rename-Item Cmdlet Path 和 NewName 参數的值。
Rename-ItemProperty 您可以藉由實作 System.Management.Automation.Provider.IDynamicPropertyCmdlet 方法,定義提供者如何使用傳遞至 Path、NewName和 Name Cmdlet Rename-ItemProperty 參數的值。
Set-Content Cmdlet 您可以實作 System.Management.Automation.Provider.IContentCmdletProvider.GetContentWriter* 方法,定義提供者如何使用傳遞至 Set-Content Cmdlet Path 參數的值。
Set-Item Cmdlet 您可以實作 System.Management.Automation.Provider.ItemCmdletProvider.SetItem* 方法,定義提供者如何使用傳遞至 Set-Item Cmdlet Path 和 Value 參數的值。
Set-ItemProperty Cmdlet 您可以實作 System.Management.Automation.Provider.IPropertyCmdletProvider.SetProperty* 方法,定義提供者如何使用傳遞給 Path 和 ValueSet-Item 參數的值。
Test-Path Cmdlet 您可以藉由實作 System.Management.Automation.Provider.ItemCmdletProvider.InvokeDefaultAction* 方法,定義提供者如何使用傳遞至 Test-Path Cmdlet Path 參數的值。
此外,您無法指定這些參數的特性,例如這些參數是選擇性還是必要,也無法將這些參數指定為別名或指定任何驗證屬性。 相反地,您可以使用 Parameters 屬性等屬性,在獨立 Cmdlet 中指定參數特性。
提供者 Cmdlet 動態參數
Cmdlet 提供者的動態參數類似於獨立 Cmdlet 的動態提供者。 在這兩種情況下,當使用者指定其中一個預設參數的特定值時,參數會新增至 Cmdlet,例如 path 參數。 不過,並非所有靜態參數都可以用來觸發新增動態參數。 如需動態參數的詳細資訊,請參閱 提供者 Cmdlet 動態參數。