New-CimInstance
Crée un instance CIM.
Syntax
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>]
Description
Cette applet de commande est disponible uniquement sur la plateforme Windows.
L’applet New-CimInstance
de commande crée un instance d’une classe CIM basée sur la définition de classe sur l’ordinateur local ou sur un ordinateur distant. Par défaut, l’applet de New-CimInstance
commande crée un instance sur l’ordinateur local.
Exemples
Exemple 1 : Create un instance d’une classe CIM
Cet exemple crée une instance d’une classe CIM nommée win32_environment dans l’espace de noms racine/cimv2 sur l’ordinateur.
New-CimInstance -ClassName Win32_Environment -Property @{Name="testvar";VariableValue="testvalue";UserName="domain\user"}
Aucune validation côté client n’est effectuée si la classe n’existe pas, si les propriétés sont incorrectes ou si le serveur rejette l’appel. Si le instance est correctement créé, l’applet de commande génère le instance nouvellement créé.
Exemple 2 : Create un instance d’une classe CIM à l’aide d’un schéma de classe
Cet exemple récupère un objet de classe CIM et le stocke dans une variable nommée $class
. Le contenu de la variable est ensuite passé à l’applet de New-CimInstance
commande .
$class = Get-CimClass -ClassName Win32_Environment
New-CimInstance -CimClass $class -Property @{Name="testvar";VariableValue="testvalue";UserName="Contoso\User1"}
Exemple 3 : Create une instance dynamique sur le client
Cet exemple crée une instance dynamique d’une classe CIM nommée Win32_Process sur l’ordinateur client sans obtenir le instance du serveur. Le nouveau instance est stocké dans la variable $a
. Cette instance dynamique peut être utilisée pour effectuer des opérations si le instance avec cette clé existe sur le serveur.
$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 :
L’applet Get-CimInstance
de commande récupère ensuite un seul instance particulier. L’applet Invoke-CimMethod
de commande appelle la méthode GetOwner sur le instance récupéré.
Exemple 4 : Create un instance pour une classe CIM d’un espace de noms spécifique
Cet exemple obtient une instance d’une classe CIM nommée MSFT_Something dans la racine/quelque part de l’espace de noms et la stocke dans une variable nommée $class
. La variable est passée à l’applet New-CimInstance
de commande pour créer une nouvelle instance CIM et effectuer des validations côté client sur la nouvelle instance.
$class = Get-CimClass -ClassName MSFT_Something -Namespace root/somewhere
New-CimInstance -CimClass $class -Property @{"Prop1"=1;"Prop2"="value"} -ClientOnly
Dans cet exemple, l’utilisation du paramètre CimClass au lieu du paramètre ClassName vérifie que Prop1 et Prop2 existent réellement et que les clés sont correctement marquées.
Vous ne pouvez pas utiliser le paramètre ComputerName ou CimSession avec le paramètre ClientOnly .
Paramètres
-CimClass
Spécifie un objet de classe CIM qui représente le type du instance. Utilisez l’applet Get-CimClass
de commande pour récupérer la déclaration de classe à partir d’un ordinateur. L’utilisation de ce paramètre entraîne de meilleures validations de schéma côté client.
Type: | CimClass |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-CimSession
Exécute la commande à l’aide de la session CIM spécifiée. Entrez une variable qui contient la session CIM, ou une commande qui crée ou obtient la session CIM, comme les New-CimSession
applets de commande ou Get-CimSession
. Pour plus d’informations, consultez about_CimSession.
Type: | CimSession[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ClassName
Spécifie le nom de la classe CIM dont l’opération crée un instance. REMARQUE : Vous pouvez utiliser la saisie semi-automatique par tabulation pour parcourir la liste des classes, car PowerShell obtient une liste de classes à partir du serveur WMI local pour fournir une liste de noms de classes.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ClientOnly
Indique que le instance est créé uniquement dans PowerShell sans passer au serveur CIM. Vous pouvez utiliser ce paramètre pour créer un instance CIM en mémoire à utiliser dans les opérations PowerShell suivantes.
Type: | SwitchParameter |
Aliases: | Local |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Spécifie le nom de l’ordinateur sur lequel vous souhaitez exécuter l’opération CIM. Vous pouvez spécifier un nom de domaine complet (FQDN), un nom NetBIOS ou une adresse IP.
Si vous spécifiez ce paramètre, l’applet de commande crée une session temporaire sur l’ordinateur spécifié à l’aide du protocole WSMan.
Si vous ne spécifiez pas ce paramètre, l’applet de commande effectue l’opération sur l’ordinateur local à l’aide du modèle COM (Component Object Model).
Si plusieurs opérations sont effectuées sur le même ordinateur, la connexion à l’aide d’une session CIM offre de meilleures performances.
Type: | String[] |
Aliases: | CN, ServerName |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Confirm
Vous demande une confirmation avant d’exécuter l’applet de commande.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Key
Spécifie les propriétés utilisées comme clés. CimSession et ComputerName ne peuvent pas être utilisés lorsque key est spécifié.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Namespace
Spécifie l’espace de noms de la classe pour la nouvelle instance. L’espace de noms par défaut est root/cimv2. Vous pouvez utiliser la saisie semi-automatique par tabulation pour parcourir la liste des espaces de noms, car PowerShell obtient une liste d’espaces de noms à partir du serveur WMI local pour fournir la liste des espaces de noms.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-OperationTimeoutSec
Spécifie la durée pendant laquelle l’applet de commande attend une réponse du serveur CIM. Par défaut, la valeur de ce paramètre est 0, ce qui signifie que l’applet de commande utilise la valeur de délai d’expiration par défaut pour le serveur. Si le paramètre OperationTimeoutSec est défini sur une valeur inférieure au délai d’expiration de nouvelle tentative de connexion robuste de 3 minutes, les défaillances réseau qui durent plus que la valeur du paramètre OperationTimeoutSec ne sont pas récupérables, car l’opération sur le serveur expire avant que le client ne puisse se reconnecter.
Type: | UInt32 |
Aliases: | OT |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Property
Spécifie les propriétés du instance CIM à l’aide d’une table de hachage (paires nom-valeur).
Si vous spécifiez le paramètre CimClass , l’applet New-CimInstance
de commande effectue une validation de propriété sur le client pour s’assurer que les propriétés spécifiées sont cohérentes avec la déclaration de classe sur le serveur. Si le paramètre CimClass n’est pas spécifié, la validation de la propriété est effectuée sur le serveur.
Type: | IDictionary |
Aliases: | Arguments |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ResourceUri
Spécifie l’URI (Uniform Resource Identifier) de la classe de ressource ou instance. L'URI est utilisé pour identifier un type particulier de ressource, comme un disque ou un processus, sur un ordinateur.
Un URI se compose d'un préfixe et d'un chemin d'accès à une ressource. Par exemple :
http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://intel.com/wbem/wscim/1/amt-schema/1/AMT_GeneralSettings
Par défaut, si vous ne spécifiez pas ce paramètre, l’URI http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/
de ressource standard DMTF est utilisé et le nom de la classe y est ajouté.
ResourceURI ne peut être utilisé qu’avec les sessions CIM créées à l’aide du protocole WSMan ou lors de la spécification du paramètre ComputerName , qui crée une session CIM à l’aide de WSMan. Si vous spécifiez ce paramètre sans spécifier le paramètre ComputerName , ou si vous spécifiez une session CIM créée à l’aide du protocole DCOM, vous obtiendrez une erreur, car le protocole DCOM ne prend pas en charge le paramètre ResourceURI .
Si les paramètres ResourceUri et Filter sont spécifiés, le paramètre Filter est ignoré.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entrées
None
Cette applet de commande n’accepte aucun objet d’entrée.
Sorties
Cette applet de commande retourne un objet qui contient les informations de instance CIM.