Compartilhar via


New-CimInstance

Cria uma instância de CIM.

Sintaxe

ClassNameComputerSet (Default)

New-CimInstance
    [-ClassName] <String>
    [[-Property] <IDictionary>]
    [-Key <String[]>]
    [-Namespace <String>]
    [-OperationTimeoutSec <UInt32>]
    [-ComputerName <String[]>]
    [-ClientOnly]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ClassNameSessionSet

New-CimInstance
    [-ClassName] <String>
    [[-Property] <IDictionary>]
    -CimSession <CimSession[]>
    [-Key <String[]>]
    [-Namespace <String>]
    [-OperationTimeoutSec <UInt32>]
    [-ClientOnly]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ResourceUriSessionSet

New-CimInstance
    [[-Property] <IDictionary>]
    -ResourceUri <Uri>
    -CimSession <CimSession[]>
    [-Key <String[]>]
    [-Namespace <String>]
    [-OperationTimeoutSec <UInt32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ResourceUriComputerSet

New-CimInstance
    [[-Property] <IDictionary>]
    -ResourceUri <Uri>
    [-Key <String[]>]
    [-Namespace <String>]
    [-OperationTimeoutSec <UInt32>]
    [-ComputerName <String[]>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

CimClassComputerSet

New-CimInstance
    [-CimClass] <CimClass>
    [[-Property] <IDictionary>]
    [-OperationTimeoutSec <UInt32>]
    [-ComputerName <String[]>]
    [-ClientOnly]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

CimClassSessionSet

New-CimInstance
    [-CimClass] <CimClass>
    [[-Property] <IDictionary>]
    -CimSession <CimSession[]>
    [-OperationTimeoutSec <UInt32>]
    [-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 em um computador remoto.

Use o parâmetro Propriedade 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"}

Esse comando cria uma instância de uma classe CIM chamada win32_environment no namespace raiz/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 gerará 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. Em seguida, 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. 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 poderá 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 do namespace/em algum lugar e a armazena em uma variável chamada $class usando o cmdlet Get-CimClass. Em seguida, o conteúdo da variável é passado para o cmdlet New-CimInstance para criar uma nova instância cim e executar validações do lado do cliente na nova instância.

Se você quiser validar a instância, por exemplo, para garantir que Prop1 e Prop2 realmente existam e se as chaves estão marcadas corretamente, use o parâmetro CimClass em vez do parâmetro ClassName.

Você não pode 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.

Usar esse parâmetro resulta em melhores validações de esquema do lado do cliente.

Propriedades do parâmetro

Tipo:CimClass
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

CimClassSessionSet
Cargo:0
Obrigatório:True
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False
CimClassComputerSet
Cargo:0
Obrigatório:True
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes: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 cria ou obtém a sessão CIM, como os cmdlets New-CimSession ou Get-CimSession. Para obter mais informações, consulte about_CimSessions.

Propriedades do parâmetro

Tipo:

CimSession[]

Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

ClassNameSessionSet
Cargo:Named
Obrigatório:True
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False
ResourceUriSessionSet
Cargo:Named
Obrigatório:True
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False
CimClassSessionSet
Cargo:Named
Obrigatório:True
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-ClassName

Especifica o nome da classe CIM da qual a operação cria uma instância. OBSERVAÇÃO: você pode usar o preenchimento da guia para navegar na lista de classes, pois o PowerShell obtém uma lista de classes do servidor WMI local para fornecer uma lista de nomes de classe.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

ClassNameComputerSet
Cargo:0
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False
ClassNameSessionSet
Cargo:0
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-ClientOnly

Indica que a instância só é criada no PowerShell sem acessar 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.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:None
Dá suporte a curingas:False
DontShow:False
Aliases:Local

Conjuntos de parâmetros

ClassNameComputerSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False
ClassNameSessionSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False
CimClassSessionSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False
CimClassComputerSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-ComputerName

Especifica o nome do computador no qual você deseja executar a operação CIM. Você pode especificar um FQDN (nome de domínio totalmente qualificado), 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 COM (Component Object Model).

Se várias operações estiverem sendo executadas no mesmo computador, conectar-se usando uma sessão CIM oferecerá melhor desempenho.

Propriedades do parâmetro

Tipo:

String[]

Valor padrão:None
Dá suporte a curingas:False
DontShow:False
Aliases:China, Nome do Servidor

Conjuntos de parâmetros

ClassNameComputerSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False
ResourceUriComputerSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False
CimClassComputerSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-Confirm

Solicita sua confirmação antes de executar o cmdlet.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:False
Dá suporte a curingas:False
DontShow:False
Aliases:cf

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Key

Especifica as propriedades usadas como chaves. CimSession e ComputerName não podem ser usados quando a chave é especificada.

Propriedades do parâmetro

Tipo:

String[]

Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

ClassNameComputerSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False
ClassNameSessionSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False
ResourceUriSessionSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False
ResourceUriComputerSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-Namespace

Especifica o namespace da classe para a nova instância.

O namespace padrão é raiz/cimv2. OBSERVAÇÃO: você pode usar a conclusão da guia para procurar a lista de namespaces, pois o PowerShell obtém uma lista de namespaces do servidor WMI local para fornecer a lista de namespaces.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

ClassNameComputerSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False
ClassNameSessionSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False
ResourceUriSessionSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False
ResourceUriComputerSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-OperationTimeoutSec

Especifica a quantidade de tempo que o cmdlet aguarda 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, pois a operação no servidor atinge o tempo limite antes que o cliente possa se reconectar.

Propriedades do parâmetro

Tipo:UInt32
Valor padrão:None
Dá suporte a curingas:False
DontShow:False
Aliases:OT

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Property

Especifica as propriedades da instância 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.

Propriedades do parâmetro

Tipo:IDictionary
Valor padrão:None
Dá suporte a curingas:False
DontShow:False
Aliases:Argumentos

Conjuntos de parâmetros

(All)
Cargo:1
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-ResourceUri

Especifica o identificador uniforme de recurso (URI) da classe ou instância do 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 URI de recurso padrão DMTF http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/ será usado e o nome da classe será acrescentado a ele.

O 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 o 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, receberá um erro, pois o protocolo DCOM não dá suporte ao parâmetro ResourceURI.

Se o parâmetro ResourceUri e o parâmetro Filter forem especificados, o parâmetro Filter será ignorado.

Propriedades do parâmetro

Tipo:Uri
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

ResourceUriSessionSet
Cargo:Named
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False
ResourceUriComputerSet
Cargo:Named
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:False
Dá suporte a curingas:False
DontShow:False
Aliases:wi

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

None

Esse cmdlet não aceita objetos de entrada.

Saídas

Object

Esse cmdlet retorna um objeto que contém as informações da instância CIM.