Udostępnij za pośrednictwem


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 New-CimInstance polecenie cmdlet tworzy wystąpienie na komputerze lokalnym.

Przykłady

Przykład 1: Twórca wystąpienie klasy CIM

W tym przykładzie zostanie utworzone 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"}

Nie jest wykonywana walidacja po stronie klienta, jeśli klasa nie istnieje, właściwości są nieprawidłowe lub jeśli serwer odrzuci wywołanie. Jeśli wystąpienie zostanie pomyślnie utworzone, polecenie cmdlet wyświetli nowo utworzone wystąpienie.

Przykład 2: Twórca 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: Twórca wystąpienia dynamicznego na kliencie

W tym przykładzie jest tworzone 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: Twórca wystąpienie klasy CIM określonej przestrzeni nazw

Ten przykład pobiera wystąpienie klasy CIM o nazwie MSFT_Something w katalogu głównym/miejscu przestrzeni nazw i przechowuje je w zmiennej o nazwie $class. Zmienna jest przekazywana do polecenia cmdlet w New-CimInstance 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. Użyj polecenia cmdlet , Get-CimClass aby pobrać deklarację klasy z komputera. Użycie tego parametru powoduje lepsze weryfikacje schematu po stronie klienta.

Type:CimClass
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-CimSession

Uruchamia polecenie przy użyciu określonej sesji CIM. Wprowadź zmienną zawierającą sesję 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.

Type:CimSession[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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 kart, ponieważ program PowerShell pobiera listę klas z lokalnego serwera WMI w celu udostępnienia listy nazw klas.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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.

Type:SwitchParameter
Aliases:Local
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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, nawiązywanie połączenia przy użyciu sesji modelu CIM zapewnia lepszą wydajność.

Type:String[]
Aliases:CN, ServerName
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Key

Określa właściwości, które są używane jako klucze. CimSession i ComputerName nie można używać, gdy określono klucz .

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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ż przekroczenie limitu czasu ponawiania próby niezawodnego połączenia przez 3 minuty, awarie sieci, które trwają dłużej niż wartość parametru OperationTimeoutSec , nie można odzyskać, ponieważ operacja na serwerze przekracza limit czasu, zanim klient będzie mógł ponownie nawiązać połączenie.

Type:UInt32
Aliases:OT
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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 przeprowadza 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 nie określono parametru CimClass , walidacja właściwości jest wykonywana na serwerze.

Type:IDictionary
Aliases:Arguments
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ResourceUri

Określa identyfikator URI zasobu 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, zostanie użyty standardowy identyfikator URI http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/ zasobu DMTF i nazwa klasy zostanie dołączona 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ę CIM przy użyciu programu WSMan. Jeśli określisz ten parametr bez określenia parametru ComputerName lub jeśli określisz sesję 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 Filtr , parametr Filtr jest ignorowany.

Type:Uri
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Dane wejściowe

None

To polecenie cmdlet nie akceptuje żadnych obiektów wejściowych.

Dane wyjściowe

Object

To polecenie cmdlet zwraca obiekt zawierający informacje o wystąpieniu modelu CIM.