New-CMQuery
Criar uma consulta do Configuration Manager.
Sintaxe
New-CMQuery
[-Comment <String>]
-Expression <String>
[-LimitToCollectionId <String>]
-Name <String>
[-TargetClassName <String>]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Utilize este cmdlet para criar uma consulta no Configuration Manager.
As consultas do Configuration Manager definem uma expressão WMI Query Language (WQL) para obter informações da base de dados do site com base nos critérios que fornecer. O WQL é semelhante ao SQL, mas continua a passar pelo Fornecedor de SMS em vez de diretamente para a base de dados. Assim, o WQL continua a respeitar a configuração de acesso baseado em funções.
As consultas podem devolver a maioria dos tipos de objetos do Configuration Manager, que incluem computadores, sites, coleções, aplicações e dados de inventário. Para obter mais informações, veja Introdução às consultas no Configuration Manager.
Por predefinição, o Configuration Manager inclui várias consultas. Pode utilizar o cmdlet Get-CMQuery para rever as consultas predefinidas. Para obter mais exemplos de expressões WQL, veja Exemplo de consultas WQL.
Observação
Execute cmdlets do Configuration Manager a partir da unidade do site do Configuration Manager, por exemplo PS XYZ:\>
. Para obter mais informações, veja Introdução.
Exemplos
Exemplo 1: Criar uma nova consulta para servidores de uma versão específica
Este exemplo cria uma nova consulta com o nome Server 2016 que procura clientes com a legenda do SO que começa com o Microsoft Windows Server 2012. Devolve as três propriedades seguintes: Nome, Apelido nome de utilizador e legenda do SO.
New-CMQuery -Name "Server 2016" -Expression 'select SMS_R_System.Name, SMS_R_System.LastLogonUserName, SMS_G_System_OPERATING_SYSTEM.Caption from SMS_R_System inner join SMS_G_System_OPERATING_SYSTEM on SMS_G_System_OPERATING_SYSTEM.ResourceID = SMS_R_System.ResourceId where SMS_G_System_OPERATING_SYSTEM.Caption like "Microsoft Windows Server 2012%"' -TargetClassName "SMS_R_System" -LimitToCollectionId "SMS00001"
Exemplo 2: Criar uma consulta para dispositivos de ambiente de trabalho
Este exemplo cria uma nova consulta denominada Dispositivos de ambiente de trabalho que procuram dispositivos com valores específicos para a propriedade Tipos de chassis da classe Bastidor do Sistema . Devolve várias propriedades e é limitada por uma coleção específica.
New-CMQuery -Name "Desktop devices" -Expression 'select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_SYSTEM_ENCLOSURE on SMS_G_System_SYSTEM_ENCLOSURE.ResourceID = SMS_R_System.ResourceId where SMS_G_System_SYSTEM_ENCLOSURE.ChassisTypes in ( "3", "4", "5","6", "7", "15","16")' -TargetClassName "SMS_R_System" -LimitToCollectionId "XYZ000049"
Parâmetros
-Comment
Especifique um comentário opcional para identificar ainda mais a consulta no site.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
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: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-DisableWildcardHandling
Este parâmetro trata os carateres universais como valores de carateres literais. 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 |
-Expression
Especifique a instrução WQL que define os atributos a apresentar nos resultados e os critérios para limitar os resultados.
Muitas vezes, as instruções WQL incluem aspas duplas ("
), por isso defina o valor deste parâmetro como uma cadeia entre aspas simples ('
).
Para obter mais exemplos, veja Exemplos de consultas WQL.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-ForceWildcardHandling
Este parâmetro processa carateres universais e pode levar a um comportamento inesperado (não recomendado). 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 |
-LimitToCollectionId
Especifique como configurar a limitação da coleção para esta consulta:
-
Não limitado à coleção: defina o valor deste parâmetro como uma cadeia em branco (
""
). Não utilize a$null
variável incorporada. -
Limite à coleção: especifique o ID de uma coleção. Por exemplo,
"SMSDM003"
para a coleção Todos os Clientes de Ambiente de Trabalho e Servidor . -
Pedido de recolha: defina o valor deste parâmetro como
"<Prompt>"
.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Name
Especifique o nome da consulta.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-TargetClassName
Especifique o nome da classe de objeto que pretende que a consulta devolva. Existem muitos tipos de objeto disponíveis. A tabela seguinte lista vários nomes de classe comuns com a descrição da consola do Configuration Manager:
Nome da classe | Descrição |
---|---|
SMS_R_System |
Recurso do sistema |
SMS_Program |
Programa |
SMS_R_UserGroup |
Recurso do grupo de utilizadores |
SMS_R_User |
Recurso de utilizador |
SMS_SiteAndSubsites |
Site e subsites |
SMS_R_UnknownSystem |
Computador desconhecido |
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
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: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
Entradas
None
Saídas
IResultObject