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

Przykłady

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

Ten przykład tworzy 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 zostanie utworzone pomyślnie, polecenie cmdlet wyświetli nowo utworzone wystąpienie.

Przykład 2: Twórca wystąpienie klasy CIM przy użyciu schematu klasy

Ten przykład pobiera obiekt klasy CIM i przechowuje go w zmiennej o nazwie $class. Zawartość zmiennej jest następnie przekazywana New-CimInstance do 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 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: Twórca wystąpienie 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ą prawidłowo oznaczone.

Nie można użyć parametru ComputerName lub CimSession z parametrem ClientOnly .

Parametry

-CimClass

Określa obiekt klasy CIM, który reprezentuje 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.

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 modelu CIM. Wprowadź zmienną zawierającą sesję modelu CIM lub polecenie, które tworzy lub pobiera sesję modelu ciągłej integracji, takie jak 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: Możesz użyć uzupełniania karty, aby przejrzeć listę klas, ponieważ program PowerShell pobiera listę klas z lokalnego serwera WMI, aby podać listę 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 do serwera MODELU 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 tworzy sesję tymczasową na określonym komputerze przy użyciu protokołu WSMan.

Jeśli ten parametr nie zostanie określony, polecenie cmdlet wykona 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 ciągłej integracji 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ć w przypadku określenia klucza .

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. Możesz użyć uzupełniania kart, aby 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ż limit czasu ponawiania próby niezawodnego połączenia 3 minuty, błędy 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ótów (par name-value).

Jeśli określisz parametr CimClass , New-CimInstance polecenie 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 zostanie określony, 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 (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, 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 ciM utworzonymi przy użyciu protokołu WSMan lub podczas określania parametru ComputerName , który tworzy sesję modelu wspólnych informacji 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, wystąpi 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.

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

Nie można potokować obiektów do tego polecenia cmdlet.

Dane wyjściowe

CimInstance

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

Uwagi

Program PowerShell zawiera następujące aliasy dla New-CimInstanceprogramu :

  • W systemie Windows:
    • ncim

To polecenie cmdlet jest dostępne tylko na platformach Windows.