Set-CimInstance
Modyfikuje wystąpienie modelu CIM na serwerze MODELU CIM, wywołując metodę ModifyInstance klasy CIM.
Składnia
Set-CimInstance
[-ComputerName <String[]>]
[-ResourceUri <Uri>]
[-OperationTimeoutSec <UInt32>]
[-InputObject] <CimInstance>
[-Property <IDictionary>]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-CimInstance
-CimSession <CimSession[]>
[-ResourceUri <Uri>]
[-OperationTimeoutSec <UInt32>]
[-InputObject] <CimInstance>
[-Property <IDictionary>]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-CimInstance
-CimSession <CimSession[]>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-Query] <String>
[-QueryDialect <String>]
-Property <IDictionary>
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-CimInstance
[-ComputerName <String[]>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-Query] <String>
[-QueryDialect <String>]
-Property <IDictionary>
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Opis
To polecenie cmdlet jest dostępne tylko na platformie Windows.
To polecenie cmdlet modyfikuje wystąpienie modelu CIM na serwerze CIM.
Jeśli nie określono parametru InputObject , polecenie cmdlet działa w jeden z następujących sposobów:
- Jeśli nie określono parametru ComputerName ani parametru CimSession , to polecenie cmdlet działa w lokalnej instrumentacji zarządzania Windows (WMI) przy użyciu sesji modelu obiektów składników (COM).
- Jeśli określono parametr ComputerName lub parametr CimSession, to polecenie cmdlet działa względem serwera CIM określonego przez parametr ComputerName lub cimSession parametru.
Jeśli określono parametr InputObject, polecenie cmdlet działa na jeden z następujących sposobów:
- Jeśli nie określono ani parametru ComputerName , ani parametru CimSession , to to polecenie cmdlet używa sesji modelu ciM lub nazwy komputera z obiektu wejściowego.
- Jeśli określono parametr ComputerName lub CimSession, to to polecenie cmdlet używa wartości parametru CimSession lub Wartości parametru ComputerName. Nie jest to bardzo powszechne.
Przykłady
Przykład 1. Ustawianie wystąpienia modelu CIM
W tym przykładzie ustawiono wartość właściwości VariableValue na abcd przy użyciu parametru Query . Wystąpienia pasujące do zapytania Języka zapytań instrumentacji zarządzania Windows (WQL) można modyfikować.
Set-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' -Property @{VariableValue="abcd"}
Przykład 2. Ustawianie właściwości wystąpienia modelu CIM przy użyciu potoku
Ten przykład pobiera obiekt wystąpienia modelu CIM filtrowany przez parametr Query przy użyciu Get-CimInstance
polecenia cmdlet . Polecenie Set-CimInstance
cmdlet modyfikuje wartość właściwości VariableValue na abcd.
Get-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' |
Set-CimInstance -Property @{VariableValue="abcd"}
Przykład 3. Ustawianie właściwości wystąpienia modelu CIM przy użyciu obiektu wejściowego
$x = Get-CimInstance -Query 'Select * from Win32_Environment where Name="testvar"'
Set-CimInstance -InputObject $x -Property @{VariableValue="somevalue"} -PassThru
W tym przykładzie są pobierane obiekty wystąpienia modelu CIM filtrowane przez parametr Query w zmiennej $x
przy użyciu metody Get-CimInstance
, a następnie przekazuje zawartość zmiennej do Set-CimInstance
polecenia cmdlet . Set-CimInstance
następnie modyfikuje właściwość VariableValue na wartość somevalue. Ponieważ jest używany parametr Passthru, ten przykład zwraca zmodyfikowany obiekt wystąpienia MODELU CIM.
Przykład 4. Ustawianie właściwości wystąpienia modelu CIM
W tym przykładzie jest pobierany obiekt wystąpienia modelu CIM określony w parametrze Query do zmiennej $x
przy użyciu Get-CimInstance
polecenia cmdlet i zmienia wartość właściwości VariableValue obiektu w celu zmiany. Następnie obiekt wystąpienia modelu CIM jest zapisywany przy użyciu Set-CimInstance
polecenia cmdlet .
Ponieważ jest używany parametr Passthru, ten przykład zwraca zmodyfikowany obiekt wystąpienia MODELU CIM.
$x = Get-CimInstance -Query 'Select * from Win32_Environment where name="testvar"'
$x.VariableValue = "Change"
Set-CimInstance -CimInstance $x -PassThru
Przykład 5. Wyświetlanie listy wystąpień modelu CIM do modyfikowania przy użyciu funkcji WhatIf
W tym przykładzie użyto wspólnego parametru WhatIf , aby określić, że modyfikacja nie powinna być wykonywana, ale tylko dane wyjściowe, co by się stało, gdyby zostało to zrobione.
Set-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' -Property @{VariableValue="abcd"} -WhatIf
Przykład 6. Ustawianie wystąpienia modelu CIM po potwierdzeniu od użytkownika
W tym przykładzie użyto wspólnego parametru Potwierdź , aby określić, że modyfikację należy wykonać dopiero po potwierdzeniu od użytkownika.
Set-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' -Property @{VariableValue="abcd"} -Confirm
Przykład 7. Ustawianie utworzonego wystąpienia modelu CIM
W tym przykładzie tworzone jest wystąpienie modelu CIM z określonymi właściwościami przy użyciu New-CimInstance
polecenia cmdlet i pobiera jego zawartość do zmiennej $x
. Zmienna jest następnie przekazywana do Set-CimInstance
polecenia cmdlet, które modyfikuje wartość właściwości VariableValue na wartość somevalue.
Ponieważ jest używany parametr Passthru, ten przykład zwraca zmodyfikowany obiekt wystąpienia MODELU CIM.
$x = New-CimInstance -ClassName Win32_Environment -Property @{Name="testvar";UserName="domain\user"} -Key Name,UserName -ClientOnly
Set-CimInstance -CimInstance $x -Property @{VariableValue="somevalue"} -PassThru
Parametry
-CimSession
Uruchamia polecenia cmdlet na komputerze zdalnym. Wprowadź nazwę komputera lub obiekt sesji, taki jak dane wyjściowe New-CimSession
polecenia cmdlet lub Get-CimSession
.
Typ: | CimSession[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-ComputerName
Określa nazwę komputera, na którym chcesz uruchomić operację CIM. Można określić w pełni kwalifikowaną nazwę domeny (FQDN) lub nazwę NetBIOS.
Jeśli nie określisz tego parametru, polecenie cmdlet wykonuje operację na komputerze lokalnym przy użyciu modelu obiektów składników (COM).
Jeśli określisz ten parametr, polecenie cmdlet utworzy sesję tymczasową na określonym komputerze przy użyciu protokołu WsMan.
Jeśli na tym samym komputerze jest wykonywanych wiele operacji, połączenie przy użyciu sesji modelu CIM zapewnia lepszą wydajność.
Typ: | String[] |
Aliasy: | CN, ServerName |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Confirm
Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.
Typ: | SwitchParameter |
Aliasy: | cf |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-InputObject
Określa obiekt wystąpienia modelu CIM, który ma być używany jako dane wejściowe.
Parametr InputObject nie wylicza się w kolekcjach. Jeśli kolekcja zostanie przekazana, zostanie zgłoszony błąd. Podczas pracy z kolekcjami należy przekazać dane wejściowe w celu wyliczenia wartości.
Typ: | CimInstance |
Aliasy: | CimInstance |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Namespace
Określa przestrzeń nazw dla operacji CIM. Domyślna przestrzeń nazw to root/cimv2. Za pomocą uzupełniania karty można przeglądać listę przestrzeni nazw, ponieważ program PowerShell pobiera listę przestrzeni nazw z lokalnego serwera WMI w celu udostępnienia listy przestrzeni nazw.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-OperationTimeoutSec
Określa czas oczekiwania polecenia cmdlet na odpowiedź z komputera. Domyślnie wartość tego parametru to 0, co oznacza, że polecenie cmdlet używa domyślnej wartości limitu czasu dla serwera.
Jeśli parametr OperationTimeoutSec jest ustawiony na wartość mniejszą niż limit czasu ponawiania próby niezawodnego połączenia przez 3 minuty, awarie sieci, które trwają dłużej niż wartość parametru OperationTimeoutSec, nie są możliwe do odzyskania, ponieważ operacja na serwerze przekracza limit czasu, zanim klient będzie mógł ponownie nawiązać połączenie.
Typ: | UInt32 |
Aliasy: | OT |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-PassThru
Zwraca obiekt reprezentujący element, z którym pracujesz. Domyślnie to polecenie cmdlet nie generuje żadnych danych wyjściowych.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Property
Określa właściwości wystąpienia modelu CIM jako tabelę skrótów (przy użyciu par name-value). Tylko właściwości określone przy użyciu tego parametru są zmieniane. Inne właściwości wystąpienia modelu CIM nie są zmieniane.
Typ: | IDictionary |
Aliasy: | Arguments |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Query
Określa zapytanie do uruchomienia na serwerze CIM w celu pobrania wystąpień modelu CIM, na których ma zostać uruchomione polecenie cmdlet. Dialekt zapytania można określić przy użyciu parametru QueryDialect.
Jeśli określona wartość zawiera cudzysłowy podwójne ("
), apostrofy ('
) lub ukośnik odwrotny (\
), należy użyć tych znaków, prefiksując je znakiem ukośnika odwrotnego (\
). Jeśli określona wartość używa operatora LIKE WQL, należy użyć następujących znaków, ujęcie ich w nawiasy kwadratowe ([]
): procent (%
), podkreślenie (_
) lub otwierając nawias kwadratowy ([
).
Typ: | String |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-QueryDialect
Określa język zapytań używany dla parametru Query. Dopuszczalne wartości tego parametru to: WQL lub CQL. Wartość domyślna to WQL.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-ResourceUri
Określa identyfikator URI (resource uniform resource identifier) klasy zasobów lub wystąpienia. Identyfikator URI służy do identyfikowania określonego typu zasobu, takiego jak dyski lub procesy, na komputerze.
Identyfikator URI składa się z prefiksu i ścieżki do zasobu. Na przykład:
http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://intel.com/wbem/wscim/1/amt-schema/1/AMT_GeneralSettings
Domyślnie, jeśli nie określisz tego parametru, jest używany standardowy identyfikator URI http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/
zasobu DMTF, a nazwa klasy jest dołączana do niego.
Identyfikator ResourceURI może być używany tylko z sesjami modelu CIM utworzonymi przy użyciu protokołu WSMan lub podczas określania parametru ComputerName, który tworzy sesję modelu CIM przy użyciu narzędzia WSMan. Jeśli określisz ten parametr bez określenia parametru ComputerName lub jeśli określisz sesję modelu ciM utworzoną przy użyciu protokołu DCOM, zostanie wyświetlony błąd, ponieważ protokół DCOM nie obsługuje parametru ResourceURI.
Jeśli określono zarówno parametr ResourceUri , jak i parametr Filter , parametr Filter zostanie zignorowany.
Typ: | Uri |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-WhatIf
Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.
Typ: | SwitchParameter |
Aliasy: | wi |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
Dane wyjściowe
None
Domyślnie to polecenie cmdlet nie zwraca żadnych danych wyjściowych.
Jeśli używasz parametru Passthru , to polecenie cmdlet zwraca zmodyfikowany obiekt wystąpienia modelu CIM.
Uwagi
Program PowerShell zawiera następujące aliasy dla programu Set-CimInstance
:
- Windows:
scim
To polecenie cmdlet jest dostępne tylko na platformach windows.