Invoke-DscResource

指定した PowerShell Desired State Configuration (DSC) リソースのメソッドを実行します。

構文

Invoke-DscResource
      [-Name] <String>
      [[-ModuleName] <ModuleSpecification>]
      [-Method] <String>
      [-Property] <Hashtable>
      [<CommonParameters>]

説明

Invoke-DscResource コマンドレットは、指定された PowerShell Desired State Configuration (DSC) リソースのメソッドを実行します。

このコマンドレットは、構成ドキュメントを作成せずに、DSC リソースを直接呼び出します。 構成管理製品では、このコマンドレットを使用して、DSC リソースを使用して Windows または Linux を管理できます。

Note

PSDesiredStateConfiguration 2.0.6 より前のバージョンでは、PowerShell 7 で を使用 Invoke-DscResource するには、PowerShell の試験的な機能を有効にする必要があります。 バージョン 2.0.0 から 2.0.5 で コマンドレットを使用するには、次のコマンドを使用して有効にする必要があります。

Enable-ExperimentalFeature PSDesiredStateConfiguration.InvokeDscResource

例 1: 必須プロパティを指定して、リソースの Set メソッドを呼び出す

この例では、WindowsProcess という名前のリソースの Set メソッドを呼び出し、指定された Windows プロセスを開始するための必須の Path プロパティと Arguments プロパティを提供します。

Invoke-DscResource -Name WindowsProcess -Method Set -ModuleName PSDesiredStateConfiguration -Property @{
  Path      = 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
  Arguments = ''
}

例 2: 指定したモジュールのリソースの Test メソッドを呼び出す

この例では、PSDesiredStateConfiguration という名前のモジュール内にある WindowsProcess という名前のリソースの Test メソッドを呼び出します。

$SplatParam = @{
    Name       = 'WindowsProcess'
    ModuleName = 'PSDesiredStateConfiguration'
    Method     = 'Test'
    Property   = @{
        Path      = 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
        Arguments = ''
    }
}

Invoke-DscResource @SplatParam

パラメーター

-Method

このコマンドレットが呼び出すリソースのメソッドを指定します。 このパラメーターに使用できる値は、 GetSetTest です。

Type:String
Accepted values:Get, Set, Test
Position:2
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ModuleName

呼び出す指定された DSC リソースを提供するモジュールの名前を指定します。

Type:ModuleSpecification
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Name

呼び出す DSC リソースの名前を指定します。

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Property

ハッシュ テーブルで、リソースのプロパティ名と値を、それぞれキーと値として指定します。

Type:Hashtable
Position:3
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

入力

String

ModuleSpecification

出力

Object

メモ

  • Windows PowerShell 5.1 では、キー PsDscRunAsCredential を使用してユーザー コンテキストで指定されていない限り、システム コンテキストでリソースが実行されました。 PowerShell 7.0 では、リソースはユーザーのコンテキストで実行され、 PsDscRunAsCredential はサポートされなくなりました。 このキーを使用すると、コマンドレットによって例外がスローされます。

  • PowerShell 7 の時点では、 Invoke-DscResource WMI DSC リソースの呼び出しはサポートされなくなりました。 これには、PSDesiredStateConfigurationファイル リソースとログ リソースが含まれます。