New-CimInstance
Tworzy wystąpienie modelu CIM.
Składnia
New-CimInstance
[-ClassName] <String>
[-Key <String[]>]
[[-Property] <IDictionary>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-ComputerName <String[]>]
[-ClientOnly]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CimInstance
[-ClassName] <String>
[-Key <String[]>]
[[-Property] <IDictionary>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
-CimSession <CimSession[]>
[-ClientOnly]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CimInstance
-ResourceUri <Uri>
[-Key <String[]>]
[[-Property] <IDictionary>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
-CimSession <CimSession[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CimInstance
-ResourceUri <Uri>
[-Key <String[]>]
[[-Property] <IDictionary>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-ComputerName <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CimInstance
[-CimClass] <CimClass>
[[-Property] <IDictionary>]
[-OperationTimeoutSec <UInt32>]
-CimSession <CimSession[]>
[-ClientOnly]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CimInstance
[-CimClass] <CimClass>
[[-Property] <IDictionary>]
[-OperationTimeoutSec <UInt32>]
[-ComputerName <String[]>]
[-ClientOnly]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Opis
To polecenie cmdlet jest dostępne tylko na platformie Windows.
Polecenie New-CimInstance
cmdlet tworzy wystąpienie klasy CIM na podstawie definicji klasy na komputerze lokalnym lub komputerze zdalnym. Domyślnie polecenie New-CimInstance
cmdlet tworzy wystąpienie na komputerze lokalnym.
Przykłady
Przykład 1. Tworzenie wystąpienia klasy CIM
W tym przykładzie tworzone jest wystąpienie klasy ciM o nazwie win32_environment w przestrzeni nazw root/cimv2 na komputerze.
New-CimInstance -ClassName Win32_Environment -Property @{Name="testvar";VariableValue="testvalue";UserName="domain\user"}
Sprawdzanie poprawności po stronie klienta nie jest wykonywane, jeśli klasa nie istnieje, właściwości są nieprawidłowe lub jeśli serwer odrzuci wywołanie. Jeśli wystąpienie zostało utworzone pomyślnie, polecenie cmdlet zwraca nowo utworzone wystąpienie.
Przykład 2. Tworzenie wystąpienia klasy CIM przy użyciu schematu klasy
W tym przykładzie pobiera obiekt klasy CIM i przechowuje go w zmiennej o nazwie $class
. Zawartość zmiennej jest następnie przekazywana do New-CimInstance
polecenia cmdlet .
$class = Get-CimClass -ClassName Win32_Environment
New-CimInstance -CimClass $class -Property @{Name="testvar";VariableValue="testvalue";UserName="Contoso\User1"}
Przykład 3. Tworzenie wystąpienia dynamicznego na kliencie
W tym przykładzie tworzone jest dynamiczne wystąpienie klasy CIM o nazwie Win32_Process na komputerze klienckim bez pobierania wystąpienia z serwera. Nowe wystąpienie jest przechowywane w zmiennej $a
. To wystąpienie dynamiczne może służyć do wykonywania operacji, jeśli wystąpienie z tym kluczem istnieje na serwerze.
$a = New-CimInstance -ClassName Win32_Process -Property @{Handle=0} -Key Handle -ClientOnly
Get-CimInstance -CimInstance $a
Invoke-CimMethod -CimInstance $a -MethodName GetOwner
ProcessId Name HandleCount WorkingSetSize VirtualSize
--------- ---- ----------- -------------- -----------
0 System Idle Process 0 8192 8192
Domain :
ReturnValue : 2
User :
PSComputerName :
Następnie Get-CimInstance
polecenie cmdlet pobiera określone pojedyncze wystąpienie. Polecenie Invoke-CimMethod
cmdlet wywołuje metodę GetOwner w pobranym wystąpieniu.
Przykład 4. Tworzenie wystąpienia dla klasy CIM określonej przestrzeni nazw
Ten przykład pobiera wystąpienie klasy CIM o nazwie MSFT_Something w katalogu głównym/gdzieś przestrzeni nazw i przechowuje je w zmiennej o nazwie $class
. Zmienna jest przekazywana do New-CimInstance
polecenia cmdlet w celu utworzenia nowego wystąpienia modelu CIM i przeprowadzenia walidacji po stronie klienta w nowym wystąpieniu.
$class = Get-CimClass -ClassName MSFT_Something -Namespace root/somewhere
New-CimInstance -CimClass $class -Property @{"Prop1"=1;"Prop2"="value"} -ClientOnly
W tym przykładzie użycie parametru CimClass zamiast parametru ClassName sprawdza, czy prop1 i Prop2 rzeczywiście istnieją i czy klucze są oznaczone poprawnie.
Nie można użyć parametru ComputerName lub CimSession z parametrem ClientOnly .
Parametry
-CimClass
Określa obiekt klasy CIM reprezentujący typ wystąpienia. Get-CimClass
Użyj polecenia cmdlet , aby pobrać deklarację klasy z komputera. Użycie tego parametru powoduje lepsze weryfikacje schematu po stronie klienta.
Typ: | CimClass |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-CimSession
Uruchamia polecenie przy użyciu określonej sesji modelu CIM. Wprowadź zmienną zawierającą sesję modelu CIM lub polecenie, które tworzy lub pobiera sesję modelu CIM, na przykład New-CimSession
polecenia cmdlet lub Get-CimSession
. Aby uzyskać więcej informacji, zobacz about_CimSession.
Typ: | CimSession[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-ClassName
Określa nazwę klasy CIM, której operacja tworzy wystąpienie. UWAGA: Do przeglądania listy klas można użyć uzupełniania tabulacji, ponieważ program PowerShell pobiera listę klas z lokalnego serwera WMI w celu udostępnienia listy nazw klas.
Typ: | String |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-ClientOnly
Wskazuje, że wystąpienie jest tworzone tylko w programie PowerShell bez przechodzenia na serwer CIM. Tego parametru można użyć do utworzenia wystąpienia ciągłej integracji w pamięci do użycia w kolejnych operacjach programu PowerShell.
Typ: | SwitchParameter |
Aliasy: | Local |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
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), nazwę NetBIOS lub adres IP.
Jeśli określisz ten parametr, polecenie cmdlet utworzy sesję tymczasową na określonym komputerze przy użyciu protokołu WSMan.
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 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: | True |
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 |
-Key
Określa właściwości, które są używane jako klucze. CimSession i ComputerName nie można używać w przypadku określenia klucza .
Typ: | String[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Namespace
Określa przestrzeń nazw klasy dla nowego wystąpienia. 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 serwera CIM. 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 |
-Property
Określa właściwości wystąpienia modelu CIM przy użyciu tabeli skrótu (par name-value).
Jeśli określisz parametr CimClass , polecenie New-CimInstance
cmdlet wykona walidację właściwości na kliencie, aby upewnić się, że określone właściwości są zgodne z deklaracją klasy na serwerze. Jeśli parametr CimClass nie został określony, weryfikacja właściwości jest wykonywana na serwerze.
Typ: | IDictionary |
Aliasy: | Arguments |
Position: | 1 |
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: | True |
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
None
Nie można potokować obiektów do tego polecenia cmdlet.
Dane wyjściowe
To polecenie cmdlet zwraca obiekt zawierający informacje o wystąpieniu modelu CIM.
Uwagi
Program PowerShell zawiera następujące aliasy dla programu New-CimInstance
:
- Windows:
ncim
To polecenie cmdlet jest dostępne tylko na platformach windows.