New-CimInstance
Crea un'istanza CIM.
Sintassi
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>]
Descrizione
Questo cmdlet è disponibile solo nella piattaforma Windows.
Il New-CimInstance
cmdlet crea un'istanza di una classe CIM basata sulla definizione della classe nel computer locale o in un computer remoto. Per impostazione predefinita, il New-CimInstance
cmdlet crea un'istanza nel computer locale.
Esempio
Esempio 1: Creare un'istanza di una classe CIM
Questo esempio crea un'istanza di una classe CIM denominata win32_environment nello spazio dei nomi root/cimv2 nel computer.
New-CimInstance -ClassName Win32_Environment -Property @{Name="testvar";VariableValue="testvalue";UserName="domain\user"}
Non viene eseguita alcuna convalida lato client se la classe non esiste, le proprietà non sono errate o se il server rifiuta la chiamata. Se l'istanza viene creata correttamente, il cmdlet restituisce l'istanza appena creata.
Esempio 2: Creare un'istanza di una classe CIM usando uno schema di classe
In questo esempio viene recuperato un oggetto classe CIM e archiviato in una variabile denominata $class
. Il contenuto della variabile viene quindi passato al New-CimInstance
cmdlet .
$class = Get-CimClass -ClassName Win32_Environment
New-CimInstance -CimClass $class -Property @{Name="testvar";VariableValue="testvalue";UserName="Contoso\User1"}
Esempio 3: Creare un'istanza dinamica nel client
In questo esempio viene creata un'istanza dinamica di una classe CIM denominata Win32_Process nel computer client senza ottenere l'istanza dal server. La nuova istanza viene archiviata nella variabile $a
. Questa istanza dinamica può essere usata per eseguire operazioni se l'istanza con questa chiave esiste nel server.
$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 :
Il Get-CimInstance
cmdlet recupera quindi una singola istanza specifica. Il Invoke-CimMethod
cmdlet chiama il metodo GetOwner nell'istanza recuperata.
Esempio 4: Creare un'istanza per una classe CIM di uno spazio dei nomi specifico
Questo esempio ottiene un'istanza di una classe CIM denominata MSFT_Something nella radice dello spazio dei nomi o in un punto qualsiasi e la archivia in una variabile denominata $class
. La variabile viene passata al New-CimInstance
cmdlet per creare una nuova istanza CIM ed eseguire convalide lato client nella nuova istanza.
$class = Get-CimClass -ClassName MSFT_Something -Namespace root/somewhere
New-CimInstance -CimClass $class -Property @{"Prop1"=1;"Prop2"="value"} -ClientOnly
In questo esempio, l'uso del parametro CimClass anziché del parametro ClassName convalida che Prop1 e Prop2 esistano effettivamente e che le chiavi siano contrassegnate correttamente.
Non è possibile utilizzare il parametro ComputerName o CimSession con il parametro ClientOnly .
Parametri
-CimClass
Specifica un oggetto classe CIM che rappresenta il tipo dell'istanza. Usare il Get-CimClass
cmdlet per recuperare la dichiarazione di classe da un computer. L'uso di questo parametro comporta una migliore convalida dello schema lato client.
Type: | CimClass |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-CimSession
Esegue il comando usando la sessione CIM specificata. Immettere una variabile contenente la sessione CIM o un comando che crea o ottiene la sessione CIM, ad esempio i New-CimSession
cmdlet o Get-CimSession
. Per altre informazioni, vedere about_CimSession.
Type: | CimSession[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ClassName
Specifica il nome della classe CIM di cui l'operazione crea un'istanza. NOTA: è possibile usare il completamento della scheda per esplorare l'elenco delle classi, perché PowerShell ottiene un elenco di classi dal server WMI locale per fornire un elenco di nomi di classe.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ClientOnly
Indica che l'istanza viene creata solo in PowerShell senza passare al server CIM. È possibile usare questo parametro per creare un'istanza CIM in memoria da usare nelle successive operazioni di PowerShell.
Type: | SwitchParameter |
Aliases: | Local |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Specifica il nome del computer in cui si desidera eseguire l'operazione CIM. È possibile specificare un nome di dominio completo (FQDN), un nome NetBIOS o un indirizzo IP.
Se si specifica questo parametro, il cmdlet crea una sessione temporanea nel computer specificato usando il protocollo WSMan.
Se non si specifica questo parametro, il cmdlet esegue l'operazione nel computer locale usando Component Object Model (COM).
Se vengono eseguite più operazioni nello stesso computer, la connessione tramite una sessione CIM offre prestazioni migliori.
Type: | String[] |
Aliases: | CN, ServerName |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Confirm
Richiede conferma prima di eseguire il cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Key
Specifica le proprietà utilizzate come chiavi. Non è possibile usare CimSession e ComputerName quando si specifica Key .
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Namespace
Specifica lo spazio dei nomi della classe per la nuova istanza. Lo spazio dei nomi predefinito è root/cimv2. È possibile usare il completamento della scheda per esplorare l'elenco degli spazi dei nomi, perché PowerShell ottiene un elenco di spazi dei nomi dal server WMI locale per fornire l'elenco degli spazi dei nomi.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-OperationTimeoutSec
Specifica la quantità di tempo in cui il cmdlet attende una risposta dal server CIM. Per impostazione predefinita, il valore di questo parametro è 0, il che significa che il cmdlet usa il valore di timeout predefinito per il server. Se il parametro OperationTimeoutSec è impostato su un valore inferiore al timeout di tentativo di connessione affidabile di 3 minuti, gli errori di rete che durano più del valore del parametro OperationTimeoutSec non sono recuperabili, perché l'operazione sul server scade prima che il client possa riconnettersi.
Type: | UInt32 |
Aliases: | OT |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Property
Specifica le proprietà dell'istanza CIM usando una tabella hash (coppie nome-valore).
Se si specifica il parametro CimClass , il New-CimInstance
cmdlet esegue una convalida delle proprietà nel client per assicurarsi che le proprietà specificate siano coerenti con la dichiarazione di classe nel server. Se il parametro CimClass non viene specificato, la convalida della proprietà viene eseguita nel server.
Type: | IDictionary |
Aliases: | Arguments |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ResourceUri
Specifica l'URI (Uniform Resource Identifier) della classe di risorse o dell'istanza di risorsa. L'URI viene usato per identificare un tipo specifico di risorsa, ad esempio i dischi o i processi, in un computer specifico.
Un URI è costituito da un prefisso e un percorso di una risorsa. Ad esempio:
http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://intel.com/wbem/wscim/1/amt-schema/1/AMT_GeneralSettings
Per impostazione predefinita, se non si specifica questo parametro, viene usato l'URI http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/
della risorsa standard DMTF e il nome della classe viene aggiunto.
ResourceURI può essere usato solo con le sessioni CIM create usando il protocollo WSMan o quando si specifica il parametro ComputerName , che crea una sessione CIM usando WSMan. Se si specifica questo parametro senza specificare il parametro ComputerName o se si specifica una sessione CIM creata usando il protocollo DCOM, verrà visualizzato un errore, perché il protocollo DCOM non supporta il parametro ResourceURI .
Se vengono specificati sia il parametro ResourceUri che il parametro Filter , il parametro Filter viene ignorato.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Input
None
Non è possibile inviare tramite pipe oggetti a questo cmdlet.
Output
Questo cmdlet restituisce un oggetto contenente le informazioni sull'istanza CIM.
Note
PowerShell include gli alias seguenti per New-CimInstance
:
- Windows:
ncim
Questo cmdlet è disponibile solo nelle piattaforme Windows.
Collegamenti correlati
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per