New-CimInstance
Cria uma instância CIM.
Sintaxe
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>]
[-ComputerName <String[]>]
[-ClientOnly]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CimInstance
[-CimClass] <CimClass>
[[-Property] <IDictionary>]
[-OperationTimeoutSec <UInt32>]
-CimSession <CimSession[]>
[-ClientOnly]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
O cmdlet New-CimInstance cria uma instância de uma classe CIM com base na definição de classe no computador local ou remoto.
Use o parâmetro Property para definir os valores iniciais das propriedades selecionadas.
Por padrão, o cmdlet New-CimInstance cria uma instância no computador local.
Exemplos
Exemplo 1: Criar uma instância de uma classe CIM
New-CimInstance -ClassName Win32_Environment -Property @{Name="testvar";VariableValue="testvalue";UserName="domain\user"}
Este comando cria uma instância de uma classe CIM chamada win32_environment no namespace root/cimv2 no computador.
Nenhuma validação do lado do cliente será executada se a classe não existir, as propriedades estiverem erradas ou se o servidor rejeitar a chamada.
Se a instância for criada com êxito, o cmdlet New-CimInstance produzirá a instância recém-criada.
Exemplo 2: Criar uma instância de uma classe CIM usando um esquema de classe
$class = Get-CimClass -ClassName Win32_Environment
New-CimInstance -CimClass $class -Property @{Name="testvar";VariableValue="testvalue";UserName="Contoso\User1"}
Esse conjunto de comandos recupera um objeto de classe CIM e o armazena em uma variável chamada $class usando o cmdlet Get-CimClass. O conteúdo da variável é passado para o cmdlet New-CimInstance.
Exemplo 3: Criar uma instância dinâmica no cliente
$a = New-CimInstance -ClassName Win32_Process -Property @{Handle=0} -Key Handle -ClientOnly
Get-CimInstance -CimInstance $a
Invoke-CimMethod -CimInstance $a -MethodName GetOwner
Esse conjunto de comandos cria uma instância dinâmica de uma classe CIM chamada win32_Process no computador cliente sem obter a instância do servidor. Esse conjunto de comandos recupera a instância dinâmica e a armazena em uma variável chamada $a e passa o conteúdo da variável para o cmdlet Get-CimInstance. Em seguida, o cmdlet Get-CimInstance recupera uma instância única específica e invoca o método GetOwner usando o cmdlet Invoke-CimMethod.
Essa instância dinâmica pode ser usada para executar operações se a instância com essa chave existir no servidor.
Exemplo 4: Criar uma instância para uma classe CIM de um namespace específico
$class = Get-CimClass -ClassName MSFT_Something -Namespace root/somewhere
New-CimInstance -CimClass $class -Property @{"Prop1"=1;"Prop2"="value"} -ClientOnly
Esse conjunto de comandos obtém uma instância de uma classe CIM chamada MSFT_Something na raiz/em algum lugar do namespace e a armazena em uma variável chamada $class usando o cmdlet Get-CimClass. O conteúdo da variável é passado para o cmdlet New-CimInstance para criar uma nova instância do CIM e executar validações do lado do cliente na nova instância.
Se você quiser validar a instância, por exemplo, para certificar-se de que Prop1 e Prop2 realmente existem e que as chaves estão marcadas corretamente, use o parâmetro CimClass em vez do parâmetro ClassName.
Não é possível usar o parâmetro ComputerName ou CimSession com o parâmetro ClientOnly.
Parâmetros
-CimClass
Especifica um objeto de classe CIM que representa o tipo da instância.
Você pode usar o cmdlet Get-CimClass para recuperar a declaração de classe de um computador.
O uso desse parâmetro resulta em melhores validações de esquema do lado do cliente.
Tipo: | CimClass |
Position: | 0 |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-CimSession
Executa o comando usando a sessão CIM especificada. Insira uma variável que contenha a sessão CIM ou um comando que crie ou obtenha a sessão CIM, como os cmdlets New-CimSession ou Get-CimSession. Para obter mais informações, consulte about_CimSessions.
Tipo: | CimSession[] |
Position: | Named |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-ClassName
Especifica o nome da classe CIM da qual a operação cria uma instância. Observação : você pode usar o preenchimento de guia para procurar a lista de classes, porque o PowerShell obtém uma lista de classes do servidor WMI local para fornecer uma lista de nomes de classe.
Tipo: | String |
Position: | 0 |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-ClientOnly
Indica que a instância só é criada no PowerShell sem ir para o servidor CIM. Você pode usar esse parâmetro para criar uma instância CIM na memória para uso em operações subsequentes do PowerShell.
Tipo: | SwitchParameter |
Aliases: | Local |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-ComputerName
Especifica o nome do computador no qual você deseja executar a operação CIM. Você pode especificar um nome de domínio totalmente qualificado (FQDN), um nome NetBIOS ou um endereço IP.
Se você especificar esse parâmetro, o cmdlet criará uma sessão temporária para o computador especificado usando o protocolo Ws-Man.
Se você não especificar esse parâmetro, o cmdlet executará a operação no computador local usando o COM (Component Object Model).
Se várias operações estiverem sendo executadas no mesmo computador, a conexão usando uma sessão CIM proporcionará um melhor desempenho.
Tipo: | String[] |
Aliases: | CN, ServerName |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-Confirm
Solicita confirmação antes de executar o cmdlet.
Tipo: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-Key
Especifica as propriedades que são usadas como chaves. CimSession e ComputerName não podem ser usados quando Key é especificado.
Tipo: | String[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-Namespace
Especifica o namespace da classe para a nova instância.
O namespace padrão é root/cimv2. Observação : você pode usar o preenchimento de guias para procurar a lista de namespaces, porque o PowerShell obtém uma lista de namespaces do servidor WMI local para fornecer a lista de namespaces.
Tipo: | String |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-OperationTimeoutSec
Especifica a quantidade de tempo que o cmdlet aguarda por uma resposta do servidor CIM.
Por padrão, o valor desse parâmetro é 0, o que significa que o cmdlet usa o valor de tempo limite padrão para o servidor.
Se o parâmetro OperationTimeoutSec for definido como um valor menor que o tempo limite de repetição de conexão robusto de 3 minutos, as falhas de rede que duram mais do que o valor do parâmetro OperationTimeoutSec não serão recuperáveis, porque a operação no servidor expira antes que o cliente possa se reconectar.
Tipo: | UInt32 |
Aliases: | OT |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-Property
Especifica as propriedades da instância do CIM usando uma tabela de hash (pares nome-valor).
Se você especificar o parâmetro CimClass, o cmdlet New-CimInstance executará uma validação de propriedade no cliente para garantir que as propriedades especificadas sejam consistentes com a declaração de classe no servidor. Se o parâmetro CimClass não for especificado, a validação da propriedade será feita no servidor.
Tipo: | IDictionary |
Aliases: | Arguments |
Position: | 1 |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-ResourceUri
Especifica o URI (identificador uniforme de recurso) de recurso da classe ou instância de recurso. O URI é usado para identificar um tipo específico de recurso, como discos ou processos, em um computador.
Um URI consiste em um prefixo e um caminho para um recurso. Por exemplo:
https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://intel.com/wbem/wscim/1/amt-schema/1/AMT_GeneralSettings
Por padrão, se você não especificar esse parâmetro, o http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/
URI de recurso padrão DMTF será usado e o nome da classe será anexado a ele.
ResourceURI só pode ser usado com sessões CIM criadas usando o protocolo WSMan ou ao especificar o parâmetro ComputerName, que cria uma sessão CIM usando WSMan. Se você especificar esse parâmetro sem especificar o parâmetro ComputerName ou se especificar uma sessão CIM criada usando o protocolo DCOM, obterá um erro, porque o protocolo DCOM não suporta o parâmetro ResourceURI.
Se o parâmetro ResourceUri e o parâmetro Filter forem especificados, o parâmetro Filter será ignorado.
Tipo: | Uri |
Position: | Named |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Tipo: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
Entradas
None
Este cmdlet não aceita objetos de entrada.
Saídas
Este cmdlet retorna um objeto que contém as informações da instância do CIM.