コマンドレット コマンドレットの動的パラメーター
プロバイダーは、ユーザーがコマンドレットのいずれかの静的パラメーターに特定の値を指定した場合に、プロバイダーコマンドレットに追加される動的パラメーターを定義できます。 たとえば、プロバイダーは、プロバイダーのコマンドレットを呼び出すときに、ユーザーが指定するパスに基づいて、さまざまな動的パラメーターを追加でき Get-Item Set-Item ます。
動的パラメーターメソッド
動的パラメーターは、 Getitemdynamicparameters * および Setitemdynamicparameters *s メソッドなどの動的パラメーターメソッドの1つを実装することによって定義されています。このメソッドについては、「」をご指定ください。 これらのメソッドは、スタンドアロンのコマンドレットと同様の属性で装飾されたパブリックプロパティを持つオブジェクトを返します。 次に示すのは、証明書プロバイダーから取得した Getitemdynamicparameters * メソッドの実装例です。次に例を示します。
protected override object GetItemDynamicParameters(string path)
{
return new CertificateProviderDynamicParameters();
}
プロバイダーコマンドレットの静的パラメーターとは異なり、スタンドアロンのコマンドレットでパラメーターを定義するのと同じ方法で、これらのパラメーターの特性を指定できます。 証明書プロバイダーから取得した動的パラメータークラスの例を次に示します。
internal sealed class CertificateProviderDynamicParameters
{
/// <summary>
/// Dynamic parameter the controls whether we only return
/// code signing certs.
/// </summary>
[Parameter()]
public SwitchParameter CodeSigningCert
{
get
{
{
return codeSigningCert;
}
}
set
{
{
codeSigningCert = value;
}
}
}
private SwitchParameter codeSigningCert = new SwitchParameter();
}
動的パラメーター
動的パラメーターの追加に使用できる静的パラメーターの一覧を次に示します。
Clear-Content コマンドレットを使用すると Path 、 Icontentcmdletprovider * メソッドを実装することによって、Clear-Clear コマンドレットのパラメーターによってトリガーされる動的パラメーターを定義できます。
Clear-Itemコマンドレットを使用すると Path 、コマンドレットのパラメーターによってトリガーされる動的パラメーターを定義できます。これを行う Clear-Item には、このメソッドを実装します。
Clear-ItemProperty コマンドレットを使用して、 Path Clear-ItemProperty Ipropertycmdletprovider * メソッドを実装することで、コマンドレットのパラメーターによってトリガーされる動的パラメーターを定義できます。
Copy-Item コマンドレットを使用して、 Path Destination Recurse Copy-Item Containercmdletprovider * メソッドを実装することで、コマンドレットの、、およびパラメーターによってトリガーされる動的パラメーターを定義できます。
Get-ChildItems コマンドレットを使用すると、 Path Recurse Get-ChildItem Containercmdletprovider. Getchilditemsdynamicparameters * メソッドと Containercmdletprovider メソッドを実装することによって、コマンドレットのパラメーターとパラメーターによってトリガーされる動的パラメーターを定義することができます。
Get-Content コマンドレットを使用すると、 Path Get-Content Icontentcmdletprovider * メソッドを実装することによって、コマンドレットのパラメーターによってトリガーされる動的パラメーターを定義できます。
Get-Item コマンドレットを使用して、 Path Get-Item Getitemdynamicparameters * メソッドを実装することで、コマンドレットのパラメーターによってトリガーされる動的パラメーターを定義できます。
Get-ItemProperty コマンドレットを使用して、 Path Name Get-ItemProperty Ipropertycmdletprovider * メソッドを実装することで、コマンドレットのパラメーターとパラメーターによってトリガーされる動的パラメーターを定義できます。
Invoke-Itemコマンドレットを使用すると Path 、コマンドレットのパラメーターによってトリガーされる動的パラメーターを定義できます。これを行う Invoke-Item には、このメソッドを実装します。
Move-Item コマンドレットを使用する Path と、 Destination コマンドレットのパラメーターとパラメーターによってトリガーされる動的パラメーターを定義できます Move-Item 。これ を行うには、このメソッドを実装します。
New-Item コマンドレットを使用すると、 Path ItemType Value New-Item Containercmdletprovider * メソッドを実装することによって、コマンドレットの、、およびパラメーターによってトリガーされる動的パラメーターを定義できます。
New-ItemProperty コマンドレットを使用する Path Name と、 PropertyType Value New-ItemProperty Idynamicpropertycmdletprovider * メソッドを実装することによって、コマンドレットの、、、およびパラメーターによってトリガーされる動的パラメーターを定義できます。
New-PSDriveコマンドレットを使用して、 New-PSDrive Newdrivedynamicparameters *メソッドを実装することによってコマンドレットによって返される system.management.automation.psdriveinfo オブジェクトによってトリガーされる動的パラメーターを定義できます。
Remove-Item``Path Recurse Remove-Item Containercmdletprovider *メソッドを実装することによって、コマンドレットのパラメーターとパラメーターによってトリガーされる動的パラメーターを定義できます。
Remove-ItemProperty``Path Name Remove-ItemProperty Idynamicpropertycmdletprovider *メソッドを実装することによって、コマンドレットのパラメーターとパラメーターによってトリガーされる動的パラメーターを定義できます。
Rename-Item コマンドレットを使用して、 Path NewName Rename-Item Containercmdletprovider * メソッドを実装することで、コマンドレットのパラメーターとパラメーターによってトリガーされる動的パラメーターを定義できます。
Rename-ItemProperty``Path Name NewName Rename-ItemProperty Idynamicpropertycmdletprovider *メソッドを実装することによって、コマンドレットの、、およびパラメーターによってトリガーされる動的パラメーターを定義することができます。
Set-Content コマンドレットを使用して、 Path Set-Content Icontentcmdletprovider. Getcontentwriterdynamicparameters * メソッドを実装することで、コマンドレットのパラメーターによってトリガーされる動的パラメーターを定義できます。
Set-Item コマンドレットを使用して、 Path Value Set-Item Setitemdynamicparameters * メソッドを実装することで、コマンドレットのパラメーターとパラメーターによってトリガーされる動的パラメーターを定義できます。
Set-ItemProperty コマンドレットを使用して、 Path Value Set-Item Ipropertycmdletprovider * メソッドを実装することで、コマンドレットのパラメーターとパラメーターによってトリガーされる動的パラメーターを定義できます。
Test-Pathコマンドレットを使用すると Path 、コマンドレットのパラメーターによってトリガーされる動的パラメーターを定義できます。これを行う Test-Path には、このメソッドを実装します。
参照
フィードバック
フィードバックの送信と表示