Invoke-CMWmiQuery
Execute uma consulta WMI.
Sintaxe
Invoke-CMWmiQuery
[-Context <Hashtable>]
[-Option <QueryOptions>]
[-Query] <String>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-CMWmiQuery
-ClassName <String>
[-Context <Hashtable>]
[-Option <QueryOptions>]
-Search <SmsProviderSearch>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
O cmdlet Invoke-CMWmiQuery executa uma consulta WMI (Instrumentação de Gerenciamento do Windows). Ao contrário de outros cmdlets ou ferramentas de consulta, com esse cmdlet, a conexão e o namespace já estão configurados para você.
Você também pode usar esse cmdlet para criar uma consulta com WQL (Linguagem de Consulta WMI). Configuration Manager usa o WQL para consultas em coleções. O WQL é semelhante ao SQL, mas ainda usa o Provedor de SMS, portanto, respeita os controles de acesso baseados em função.
Observação
Execute Configuration Manager cmdlets da unidade do site Configuration Manager, por exemplo PS XYZ:\>
. Para obter mais informações, confira introdução.
Exemplos
Exemplo 1: executar uma consulta WQL
O primeiro comando cria uma consulta WQL e a armazena na variável $WQL . O segundo comando executa a consulta armazenada na variável.
$WQL = @"
SELECT app.* FROM SMS_ApplicationLatest AS app
INNER JOIN SMS_CIContentPackage AS con ON app.CI_ID=con.CI_ID
INNER JOIN SMS_DistributionPoint AS srv ON con.PackageID=srv.PackageID
WHERE app.IsHidden = 0
"@
Invoke-CMWmiQuery -Query $WQL -Option Lazy
Exemplo 2: executar uma consulta WMI para coleções de dispositivos
O primeiro comando cria um objeto de pesquisa e armazena o objeto na variável $Search .
O segundo comando especifica que a ordem de pesquisa está subindo pelo CollectionID.
O terceiro comando adiciona parâmetros de pesquisa ao objeto $Search . Nesse caso, a consulta pesquisa coleções de dispositivos.
O último comando executa a consulta armazenada em $Search. Ele especifica SMS_Collection como a classe que contém a propriedade CollectionID .
$Search = [Microsoft.ConfigurationManagement.PowerShell.Provider.SmsProviderSearch]::new()
$Search.AddOrder("CollectionID", [Microsoft.ConfigurationManagement.PowerShell.Provider.SearchParameterOrderBy]::Asc)
$Search.Add("Name","DeviceCol*", $True)
Invoke-CMWmiQuery -Search $Search -ClassName "SMS_Collection" -Option Lazy
Exemplo 3: executar uma consulta WMI para sites por status
O primeiro comando limpa os parâmetros de pesquisa de qualquer objeto de pesquisa existente.
O segundo comando adiciona parâmetros de pesquisa ao objeto $Search . Nesse caso, a consulta procura sites.
O último comando executa a consulta armazenada em $Search. Ele especifica SMS_Site como a classe que contém a propriedade Status do site.
$Search.Clear()
$Search.Add("Status", $True)
Invoke-CMWmiQuery -ClassName "SMS_Site" -Search $Search
Exemplo 4: executar uma consulta WMI para sites por nome
O primeiro comando limpa os parâmetros de pesquisa de qualquer objeto de pesquisa existente.
O segundo comando adiciona parâmetros de pesquisa ao objeto $Search . Nesse caso, a consulta procura sites.
O último comando executa a consulta armazenada em $Search. Ele especifica SMS_Site como a classe que contém a propriedade SiteName .
$Search.Clear()
$Search.Add("SiteName", $null, [Microsoft.ConfigurationManagement.PowerShell.Provider.SearchParameterOperator]::NotEquals)
Invoke-CMWmiQuery -ClassName "SMS_Site" -Search $Search
Exemplo 5: executar uma consulta WMI para aplicativos
O primeiro comando limpa os parâmetros de pesquisa de qualquer objeto de pesquisa existente.
O segundo comando adiciona parâmetros de pesquisa ao objeto $Search . Nesse caso, a consulta pesquisa aplicativos.
O último comando executa a consulta armazenada em $Search. Ele especifica SMS_Application como a classe que contém a propriedade CI_ID do site.
$Search.Clear()
$Search.AddAdhoc("CI_ID > 0")
Invoke-CMWmiQuery -ClassName "SMS_Application" -Search $Search -Option Lazy
Parâmetros
-ClassName
Especifica a classe WMI Configuration Manager que você deseja consultar.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Confirm
Solicita a confirmação antes de executar o cmdlet.
Tipo: | SwitchParameter |
Aliases: | cf |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Context
Especifique o contexto WMI como uma tabela de hash. É uma lista de pares de nome/valor que são passados para um provedor WMI que dá suporte a informações de contexto para uma operação personalizada.
Tipo: | Hashtable |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-DisableWildcardHandling
Esse parâmetro trata caracteres curinga como valores de caractere literal. Você não pode combiná-lo com ForceWildcardHandling.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-ForceWildcardHandling
Esse parâmetro processa caracteres curinga e pode levar a um comportamento inesperado (não recomendado). Você não pode combiná-lo com DisableWildcardHandling.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Option
A opção mais comum é Fast
.
Especifique uma opção de consulta:
-
None
:Padrão -
Lazy
: por padrão, o cmdlet carrega propriedades lentas. -
Fast
: use essa opção para não carregar propriedades lentas. Essa opção pode retornar resultados mais rapidamente para algumas classes. -
ExpectResults
ExpectResultsThrowException
&: se a consulta não retornar resultados, crie uma exceção. Essa exceção normalmente termina um script. -
FastExpectResults
LazyExpectResults
& : essas opções combinamFast
eLazy
comExpectResults
. -
ExpectResultsSoftFail
: se a consulta não retornar resultados, gere um erro, mas não termine o script.
Para obter mais informações sobre propriedades preguiçosas, consulte Configuration Manager propriedades lentas.
Os seguintes valores são somente para uso interno:
- Clone
- NoMask
- NoRefresh
- IgnoreNoResults
Tipo: | QueryOptions |
Aliases: | Options |
Valores aceitos: | None, NoRefresh, Lazy, Fast, ExpectResults, FastExpectResults, LazyExpectResults, Clone, ExpectResultsSoftFail, ExpectResultsThrowException, NoMask, IgnoreNoResults |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Query
Especifica uma instrução WQL (WQL).
Tipo: | String |
Cargo: | 0 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Search
Especifica um objeto SMSProviderSearch .
Tipo: | SmsProviderSearch |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-WhatIf
Mostrar o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Tipo: | SwitchParameter |
Aliases: | wi |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
Entradas
None
Saídas
IResultObject[]
IResultObject
Links Relacionados
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de