O cmdlet Set-WmiInstance cria ou atualiza uma instância de uma classe WMI (Instrumentação de Gerenciamento do Windows) existente.
A instância criada ou atualizada é gravada no repositório WMI.
Novos cmdlets CIM, introduzidos no Windows PowerShell 3.0, executam as mesmas tarefas que os cmdlets WMI.
Os cmdlets CIM estão em conformidade com os padrões de WS-Management (WSMan) e com o padrão CIM (Common Information Model).
Isso permite que os cmdlets usem as mesmas técnicas para gerenciar computadores baseados no Windows e aqueles que executam outros sistemas operacionais.
Em vez de usar Set-WmiInstance, considere usar os cmdlets Set-CimInstance ou New-CimInstance.
Esse comando define o nível de log do WMI como 2.
O comando passa a propriedade a ser definida e o valor, juntos considerados um par de valores, no parâmetro de argumento.
O parâmetro usa uma tabela de hash definida pela construção @{property = value}.
As informações de classe retornadas refletem o novo valor.
Exemplo 2: Criar uma variável de ambiente e seu valor
Esse comando cria a variável de ambiente testvar que tem o valor testvalue.
Ele faz isso criando uma nova instância da classe WMI Win32_Environment.
Essa operação requer credenciais apropriadas e talvez seja necessário reiniciar o Windows PowerShell para ver a nova variável de ambiente.
Exemplo 3: Definir o nível de registro em log WMI para vários computadores remotos
Esse comando define o nível de log do WMI como 2.
O comando passa a propriedade a ser definida e o valor, juntos considerados um par de valores, no parâmetro de argumento.
O parâmetro usa uma tabela de hash definida pela construção @{property = value}.
As informações de classe retornadas refletem o novo valor.
Parâmetros
-Arguments
Especifica o nome da propriedade a ser alterada e o novo valor dessa propriedade.
O nome e o valor devem ser um par nome-valor.
O par nome-valor é passado na linha de comando como uma tabela de hash.
Por exemplo:
@{Setting1=1; Setting2=5; Setting3="test"}
Propriedades do parâmetro
Tipo:
Hashtable
Valor padrão:
None
Dá suporte a curingas:
False
DontShow:
False
Aliases:
Argumentos, Propriedade
Conjuntos de parâmetros
class
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
object
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
path
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
-AsJob
Indica que esse cmdket é executado como um trabalho em segundo plano.
Use esse parâmetro para executar comandos que levam muito tempo para serem concluídos.
Quando você especifica o parâmetro AsJob, o comando retorna um objeto que representa o trabalho em segundo plano e exibe o prompt de comando.
Você pode continuar a trabalhar na sessão enquanto o trabalho é concluído.
Se Set-WmiInstance for usado para um computador remoto, o trabalho será criado no computador local e os resultados de computadores remotos serão automaticamente retornados para o computador local.
Para gerenciar o trabalho, use os cmdlets que contêm o substantivo Job (os cmdlets de Trabalho ).
Para obter os resultados do trabalho, use o cmdlet Receive-Job.
Para usar esse parâmetro junto com computadores remotos, os computadores locais e remotos devem ser configurados para comunicação remota.
Além disso, você deve iniciar o Windows PowerShell usando a opção Executar como administrador no Windows Vista e versões posteriores do sistema operacional Windows.
Para obter mais informações, consulte about_Remote_Requirements.
Para obter mais informações sobre trabalhos em segundo plano do Windows PowerShell, consulte about_Jobs e about_Remote_Jobs.
Propriedades do parâmetro
Tipo:
SwitchParameter
Valor padrão:
None
Dá suporte a curingas:
False
DontShow:
False
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
-Authentication
Especifica o nível de autenticação que deve ser usado com a conexão WMI.
Os valores aceitáveis para este parâmetro são:
-1: Inalterado.
0: Padrão.
1: Nenhum.
Nenhuma autenticação em execução.
2: Conectar.
A autenticação é executada somente quando o cliente estabelece uma relação com o aplicativo.
3: Chamada.
A autenticação é executada somente no início de cada chamada quando o aplicativo recebe a solicitação.
4: Pacote.
A autenticação é executada em todos os dados recebidos do cliente.
5: Integridade do pacote.
Todos os dados transferidos entre o cliente e o aplicativo são autenticados e verificados.
6: Privacidade do pacote.
As propriedades dos outros níveis de autenticação são usadas e todos os dados são criptografados.
Especifica a autoridade a ser usada para autenticar a conexão WMI.
Você pode especificar a autenticação padrão NTLM ou Kerberos.
Para usar o NTLM, defina a configuração de autoridade como ntlmdomain:<DomainName>, em que <DomainName> identifica um nome de domínio NTLM válido.
Para usar Kerberos, especifique kerberos:<DomainName>\<ServerName>.
Você não pode incluir a configuração de autoridade ao se conectar ao computador local.
Propriedades do parâmetro
Tipo:
String
Valor padrão:
None
Dá suporte a curingas:
False
DontShow:
False
Conjuntos de parâmetros
class
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
path
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
WQLQuery
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
query
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
list
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
-Class
Especifica o nome de uma classe WMI.
Propriedades do parâmetro
Tipo:
String
Valor padrão:
None
Dá suporte a curingas:
False
DontShow:
False
Conjuntos de parâmetros
class
Cargo:
0
Obrigatório:
True
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 esse cmdlet é executado.
O padrão é o computador local.
Digite o nome NetBIOS, um endereço IP ou um nome de domínio totalmente qualificado de um ou mais computadores.
Para especificar o computador local, digite o nome do computador, um ponto (.) ou localhost.
Esse parâmetro não depende da comunicação remota do Windows PowerShell.
Você pode usar o parâmetro ComputerName mesmo se o computador não estiver configurado para executar comandos remotos.
Propriedades do parâmetro
Tipo:
String[]
Valor padrão:
None
Dá suporte a curingas:
False
DontShow:
False
Aliases:
Cn
Conjuntos de parâmetros
class
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
path
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
WQLQuery
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
query
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
list
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
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
-Credential
Especifica uma conta de usuário que tem permissão para executar essa ação.
O padrão é o usuário atual.
Digite um nome de usuário, como User01 ou Domain01\User01, ou insira um objeto PSCredential, como um gerado pelo cmdlet Get-Credential.
Se você digitar um nome de usuário, esse cmdlet solicitará uma senha.
Não há suporte para esse parâmetro em nenhum provedor instalado com parâmetro por provedores instalados com o Windows PowerShell.
Propriedades do parâmetro
Tipo:
PSCredential
Valor padrão:
None
Dá suporte a curingas:
False
DontShow:
False
Conjuntos de parâmetros
class
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
path
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
WQLQuery
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
query
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
list
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
-EnableAllPrivileges
Indica que esse cmdlet habilita todas as permissões do usuário atual antes do comando que ele faz a chamada WMI.
Propriedades do parâmetro
Tipo:
SwitchParameter
Valor padrão:
None
Dá suporte a curingas:
False
DontShow:
False
Conjuntos de parâmetros
class
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
path
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
WQLQuery
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
query
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
list
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
-Impersonation
Especifica o nível de representação a ser usado.
Os valores aceitáveis para este parâmetro são:
0: Padrão.
Lê o registro local para o nível de representação padrão, que geralmente é definido como 3: Representação.
1: Anônimo.
Oculta as credenciais do chamador.
2: Identificar.
Permite que os objetos consultem as credenciais do chamador.
3: Representar.
Permite que os objetos usem as credenciais do chamador.
4: Delegar.
Permite que os objetos permitam que outros objetos usem as credenciais do chamador.
Especifica um objeto ManagementObject a ser usado como entrada.
Quando esse parâmetro é usado, todos os outros parâmetros , exceto o parâmetro argumentos , são ignorados.
Propriedades do parâmetro
Tipo:
ManagementObject
Valor padrão:
None
Dá suporte a curingas:
False
DontShow:
False
Conjuntos de parâmetros
object
Cargo:
Named
Obrigatório:
True
Valor do pipeline:
True
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
-Locale
Especifica a localidade preferencial para objetos WMI.
O parâmetro Locale é especificado em uma matriz no formato LCID< MS_>na ordem preferencial.
Propriedades do parâmetro
Tipo:
String
Valor padrão:
None
Dá suporte a curingas:
False
DontShow:
False
Conjuntos de parâmetros
class
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
path
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
WQLQuery
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
query
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
list
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
-Namespace
Especifica o namespace do repositório WMI em que a classe WMI referenciada está localizada quando é usada com o parâmetro classe .
Propriedades do parâmetro
Tipo:
String
Valor padrão:
None
Dá suporte a curingas:
False
DontShow:
False
Aliases:
NS
Conjuntos de parâmetros
class
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
path
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
WQLQuery
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
query
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
list
Cargo:
Named
Obrigatório:
False
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
-Path
Especifica um caminho de objeto WMI da instância que você deseja criar ou atualizar.
Propriedades do parâmetro
Tipo:
String
Valor padrão:
None
Dá suporte a curingas:
False
DontShow:
False
Conjuntos de parâmetros
path
Cargo:
Named
Obrigatório:
True
Valor do pipeline:
False
Valor do pipeline pelo nome da propriedade:
False
Valor dos argumentos restantes:
False
-PutType
Indica se a instância WMI deve ser criada ou atualizada.
Os valores aceitáveis para este parâmetro são:
Somente atualização.
Atualiza uma instância WMI existente.
CreateOnly.
Cria uma nova instância do WMI.
UpdateOrCreate.
Atualiza a instância WMI se ela existir ou criar uma nova instância se uma instância não existir.
Propriedades do parâmetro
Tipo:
PutType
Valor padrão:
None
Valores aceitos:
None, UpdateOnly, CreateOnly, UpdateOrCreate
Dá suporte a curingas:
False
DontShow:
False
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
-ThrottleLimit
Especifica o número máximo de conexões simultâneas que podem ser estabelecidas para executar esse comando.
Esse parâmetro é usado junto com o parâmetro asJob .
O limite de limitação se aplica somente ao comando atual, não à sessão ou ao computador.
Propriedades do parâmetro
Tipo:
Int32
Valor padrão:
None
Dá suporte a curingas:
False
DontShow:
False
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
-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.