Compartilhar via


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