Invoke-DscResource
Voert een methode uit van een opgegeven DSC-resource (PowerShell Desired State Configuration).
Syntaxis
Invoke-DscResource
[-Name] <String>
[[-ModuleName] <ModuleSpecification>]
[-Method] <String>
[-Property] <Hashtable>
[<CommonParameters>]
Description
De cmdlet Invoke-DscResource
voert een methode uit van een opgegeven DSC-resource (PowerShell Desired State Configuration).
Met deze cmdlet wordt een DSC-resource rechtstreeks aangeroepen zonder een configuratiedocument te maken. Met deze cmdlet kunnen configuratiebeheerproducten Windows of Linux beheren met DSC-resources.
Deze cmdlet werkt niet met samengestelde resources. Samengestelde resources zijn geparameteriseerde configuraties. Voor het gebruik van samengestelde resources is de LCM vereist.
Notitie
Voordat PSDesiredStateConfiguration 2.0.6 wordt gebruikt, moet Invoke-DscResource
in PowerShell 7 een experimentele PowerShell-functie inschakelen. Als u de cmdlet in versie 2.0.0 tot en met 2.0.5 wilt gebruiken, moet u deze inschakelen met de volgende opdracht.
Enable-ExperimentalFeature PSDesiredStateConfiguration.InvokeDscResource
Voorbeelden
Voorbeeld 1: De setmethode van een resource aanroepen door de verplichte eigenschappen ervan op te geven
In dit voorbeeld wordt de methode Set van een resource met de naam WindowsProcess aangeroepen en wordt het verplichte pad en argumenten eigenschappen geboden om het opgegeven Windows-proces te starten.
Invoke-DscResource -Name WindowsProcess -Method Set -ModuleName PSDesiredStateConfiguration -Property @{
Path = 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
Arguments = ''
}
Voorbeeld 2: De testmethode van een resource voor een opgegeven module aanroepen
In dit voorbeeld wordt de methode Test van een resource met de naam WindowsProcessaangeroepen. Deze bevindt zich in de module met de naam PSDesiredStateConfiguration.
$SplatParam = @{
Name = 'WindowsProcess'
ModuleName = 'PSDesiredStateConfiguration'
Method = 'Test'
Property = @{
Path = 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
Arguments = ''
}
}
Invoke-DscResource @SplatParam
Parameters
-Method
Hiermee geeft u de methode op van de resource die door deze cmdlet wordt aangeroepen. De acceptabele waarden voor deze parameter zijn: Get, Seten Test.
Type: | String |
Geaccepteerde waarden: | Get, Set, Test |
Position: | 2 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-ModuleName
Hiermee geeft u de naam van de module die de opgegeven DSC-resource opgeeft die moet worden aangeroepen.
Type: | ModuleSpecification |
Position: | 1 |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Name
Hiermee geeft u de naam op van de DSC-resource die moet worden aangeroepen.
Type: | String |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Property
Hiermee geeft u de naam van de resource-eigenschap en de bijbehorende waarde in een hash-tabel op als sleutel en waarde, respectievelijk.
Type: | Hashtable |
Position: | 3 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
Uitvoerwaarden
Notities
In Windows PowerShell 5.1-resources zijn uitgevoerd onder de systeemcontext, tenzij deze zijn opgegeven met gebruikerscontext met behulp van de sleutel PsDscRunAsCredential. In PowerShell 7.0 worden resources uitgevoerd in de context van de gebruiker en wordt PsDscRunAsCredential- niet meer ondersteund. Als u deze sleutel gebruikt, genereert de cmdlet een uitzondering.
Vanaf PowerShell 7 biedt
Invoke-DscResource
geen ondersteuning meer voor het aanroepen van WMI DSC-resources. Dit omvat de resources File en Log in PSDesiredStateConfiguration-.