Udostępnij przez


Set-CimInstance

Modyfikuje wystąpienie modelu CIM na serwerze MODELU CIM, wywołując metodę ModifyInstance klasy CIM.

Składnia

CimInstanceComputerSet (domyślnie)

Set-CimInstance
    [-InputObject] <CimInstance>
    [-ComputerName <String[]>]
    [-ResourceUri <Uri>]
    [-OperationTimeoutSec <UInt32>]
    [-Property <IDictionary>]
    [-PassThru]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

CimInstanceSessionSet

Set-CimInstance
    [-InputObject] <CimInstance>
    -CimSession <CimSession[]>
    [-ResourceUri <Uri>]
    [-OperationTimeoutSec <UInt32>]
    [-Property <IDictionary>]
    [-PassThru]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

QuerySessionSet

Set-CimInstance
    [-Query] <String>
    -CimSession <CimSession[]>
    -Property <IDictionary>
    [-Namespace <String>]
    [-OperationTimeoutSec <UInt32>]
    [-QueryDialect <String>]
    [-PassThru]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

QueryComputerSet

Set-CimInstance
    [-Query] <String>
    -Property <IDictionary>
    [-ComputerName <String[]>]
    [-Namespace <String>]
    [-OperationTimeoutSec <UInt32>]
    [-QueryDialect <String>]
    [-PassThru]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Opis

Polecenie cmdlet Set-CimInstance 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. Uwaga: nie jest to bardzo powszechne.

Przykłady

Przykład 1. Ustawianie wystąpienia modelu CIM

Set-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' -Property @{VariableValue="abcd"}

To polecenie ustawia 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ć.

Przykład 2. Ustawianie właściwości wystąpienia modelu CIM przy użyciu potoku

Get-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' | Set-CimInstance -Property @{VariableValue="abcd"}

To polecenie pobiera obiekt wystąpienia modelu CIM filtrowany przez parametr Query przy użyciu polecenia cmdlet Get-CimInstance, a następnie przekazuje obiekty do polecenia cmdlet Set-CimInstance, które modyfikuje wartość właściwości VariableValue na 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

Ten zestaw poleceń pobiera obiekty wystąpień modelu CIM filtrowane przez parametr Query w zmiennej ($x) przy użyciu polecenia Get-CimInstance, a następnie przekazuje zawartość zmiennej do polecenia cmdlet Set-CimInstance. Set-CimInstance następnie modyfikuje właściwość VariableValue na wartość somevalue. Ponieważ jest używany parametr Passthru, ten zestaw poleceń zwraca zmodyfikowany obiekt wystąpienia MODELU CIM.

Przykład 4. Ustawianie właściwości wystąpienia modelu CIM

$x = Get-CimInstance -Query 'Select * from Win32_Environment where name="testvar"'
$x.VariableValue = "Change"
Set-CimInstance -CimInstance $x -PassThru

Ten zestaw poleceń pobiera obiekt wystąpienia modelu CIM określony w parametrze Query do zmiennej ($x) przy użyciu polecenia cmdlet Get-CimInstance i zmienia wartość właściwości VariableValue obiektu w celu zmiany. Następnie obiekt wystąpienia modelu CIM jest zapisywany przy użyciu polecenia cmdlet Set-CimInstance. Ponieważ jest używany parametr Passthru, ten zestaw poleceń zwraca zmodyfikowany obiekt wystąpienia MODELU CIM.

Przykład 5. Wyświetlanie listy wystąpień modelu CIM do modyfikowania przy użyciu funkcji WhatIf

Set-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' -Property @{VariableValue="abcd"} -WhatIf

To polecenie używa 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 wykonane.

Przykład 6. Ustawianie wystąpienia modelu CIM po potwierdzeniu od użytkownika

Set-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' -Property @{VariableValue="abcd"} -Confirm

To polecenie używa wspólnego parametru Potwierdź, aby określić, że modyfikacja powinna być wykonywana dopiero po potwierdzeniu od użytkownika.

Przykład 7. Ustawianie utworzonego wystąpienia modelu CIM

$x = New-CimInstance -ClassName Win32_Environment -Property @{Name="testvar";UserName="domain\user"} -Keys Name,UserName -ClientOnly
Set-CimInstance -CimInstance $x -Property @{VariableValue="somevalue"} -PassThru

Ten zestaw poleceń tworzy wystąpienie modelu CIM z określonymi właściwościami przy użyciu polecenia cmdlet New-CimInstance i pobiera jego zawartość do zmiennej ($x). Zmienna jest następnie przekazywana do polecenia cmdlet Set-CimInstance, które modyfikuje wartość właściwości VariableValue na pewną wartość. Ponieważ jest używany parametr Passthru, ten zestaw poleceń zwraca zmodyfikowany obiekt wystąpienia MODELU CIM.

Parametry

-CimSession

Uruchamia polecenia cmdlet na komputerze zdalnym. Wprowadź nazwę komputera lub obiekt sesji, taki jak dane wyjściowe polecenia cmdlet New-CimSession lub Get-CimSession.

Właściwości parametru

Typ:

CimSession[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

CimInstanceSessionSet
Position:Named
Obowiązkowe:True
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
QuerySessionSet
Position:Named
Obowiązkowe:True
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów: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ść.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:CN, NazwaSerwera

Zestawy parametrów

CimInstanceComputerSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
QueryComputerSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Confirm

Prosi o potwierdzenie przed uruchomieniem cmdletu.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:por

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-InputObject

Określa obiekt wystąpienia modelu CIM, który ma być używany jako dane wejściowe.

Właściwości parametru

Typ:CimInstance
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:CimInstance

Zestawy parametrów

CimInstanceComputerSet
Position:0
Obowiązkowe:True
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
CimInstanceSessionSet
Position:0
Obowiązkowe:True
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Namespace

Określa przestrzeń nazw dla operacji CIM.

Domyślna przestrzeń nazw to root/cimv2. Za pomocą uzupełniania za pomocą klawisza Tab można przeglądać listę przestrzeni nazw, ponieważ PowerShell pobiera listę przestrzeni nazw z lokalnego serwera WMI w celu udostępnienia listy przestrzeni nazw.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

QuerySessionSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False
QueryComputerSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-OperationTimeoutSec

Określa czas, przez który polecenie cmdlet czeka na odpowiedź od 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.

Właściwości parametru

Typ:UInt32
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:OT

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-PassThru

Zwraca obiekt reprezentujący element, z którym pracujesz. Domyślnie to polecenie cmdlet nie generuje żadnych danych wyjściowych.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów: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.

Właściwości parametru

Typ:IDictionary
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:Argumenty (w programowaniu)

Zestawy parametrów

CimInstanceComputerSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False
CimInstanceSessionSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False
QuerySessionSet
Position:Named
Obowiązkowe:True
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False
QueryComputerSet
Position:Named
Obowiązkowe:True
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów: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 je usunąć, 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 ([).

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

QuerySessionSet
Position:0
Obowiązkowe:True
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False
QueryComputerSet
Position:0
Obowiązkowe:True
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów: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.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

QuerySessionSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False
QueryComputerSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-ResourceUri

Określa jednolity identyfikator zasobu (URI) klasy zasobów lub jej 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. Przykład:

  • https://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, używany jest identyfikator URI zasobu standardowego DMTF http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/, 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.

Właściwości parametru

Typ:Uri
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

CimInstanceComputerSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False
CimInstanceSessionSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-WhatIf

Pokazuje, co się stanie, jeśli polecenie cmdlet zostanie uruchomione. Cmdlet nie jest uruchomiony.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:Wi

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

CommonParameters

To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.

Dane wejściowe

CimInstance

Dane wyjściowe

CimInstance

Po określeniu parametru Passthru to polecenie cmdlet zwraca zmodyfikowany obiekt wystąpienia modelu CIM.