Invoke-DscResource
Uruchamia metodę określonego zasobu Desired State Configuration programu PowerShell (DSC).
Składnia
Invoke-DscResource
[-Name] <String>
[[-ModuleName] <ModuleSpecification>]
[-Method] <String>
[-Property] <Hashtable>
[<CommonParameters>]
Opis
Polecenie Invoke-DscResource
cmdlet uruchamia metodę określonego zasobu Desired State Configuration programu PowerShell (DSC).
To polecenie cmdlet wywołuje bezpośrednio zasób DSC bez tworzenia dokumentu konfiguracji. Za pomocą tego polecenia cmdlet produkty do zarządzania konfiguracją mogą zarządzać systemami Windows lub Linux przy użyciu zasobów DSC.
To polecenie cmdlet nie działa z zasobami złożonymi. Zasoby złożone są sparametryzowane konfiguracje. Korzystanie z zasobów złożonych wymaga narzędzia LCM.
Uwaga
Przed programem PSDesiredStateConfiguration 2.0.6 użycie Invoke-DscResource
w programie PowerShell 7 wymaga włączenia funkcji eksperymentalnej programu PowerShell. Aby użyć polecenia cmdlet w wersjach 2.0.0 do 2.0.5, należy włączyć je za pomocą następującego polecenia.
Enable-ExperimentalFeature PSDesiredStateConfiguration.InvokeDscResource
Przykłady
Przykład 1. Wywołaj metodę Set zasobu, określając jej obowiązkowe właściwości
W tym przykładzie wywoływana jest metoda Set zasobu o nazwie WindowsProcess i udostępnia obowiązkowe właściwości Path and Arguments w celu uruchomienia określonego procesu systemu Windows.
Invoke-DscResource -Name WindowsProcess -Method Set -ModuleName PSDesiredStateConfiguration -Property @{
Path = 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
Arguments = ''
}
Przykład 2. Wywoływanie metody testowej zasobu dla określonego modułu
W tym przykładzie wywoływana jest metoda Test zasobu o nazwie WindowsProcess, który znajduje się w module o nazwie PSDesiredStateConfiguration.
$SplatParam = @{
Name = 'WindowsProcess'
ModuleName = 'PSDesiredStateConfiguration'
Method = 'Test'
Property = @{
Path = 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
Arguments = ''
}
}
Invoke-DscResource @SplatParam
Parametry
-Method
Określa metodę zasobu, który wywołuje to polecenie cmdlet. Dopuszczalne wartości tego parametru to: Get, Set i Test.
Typ: | String |
Dopuszczalne wartości: | Get, Set, Test |
Position: | 2 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ModuleName
Określa nazwę modułu udostępniającego określony zasób DSC do wywołania.
Typ: | ModuleSpecification |
Position: | 1 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Name
Określa nazwę zasobu DSC do wywołania.
Typ: | String |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Property
Określa nazwę właściwości zasobu i jej wartość w tabeli skrótów odpowiednio jako klucz i wartość.
Typ: | Hashtable |
Position: | 3 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
Dane wyjściowe
Uwagi
W Windows PowerShell 5.1 zasoby zostały uruchomione w kontekście systemowym, chyba że określono kontekst użytkownika przy użyciu klucza PsDscRunAsCredential. W programie PowerShell 7.0 zasoby są uruchamiane w kontekście użytkownika, a program PsDscRunAsCredential nie jest już obsługiwany. Użycie tego klucza powoduje, że polecenie cmdlet zgłasza wyjątek.
Od programu PowerShell 7
Invoke-DscResource
nie obsługuje już wywoływania zasobów DSC WMI. Obejmuje to zasoby plików i dzienników w pliku PSDesiredStateConfiguration.