Compartir a través de


New-CMQuery

Cree una consulta de Configuration Manager.

Sintaxis

New-CMQuery
   [-Comment <String>]
   -Expression <String>
   [-LimitToCollectionId <String>]
   -Name <String>
   [-TargetClassName <String>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

Use este cmdlet para crear una consulta en Configuration Manager.

Las consultas de Configuration Manager definen una expresión de lenguaje de consulta WMI (WQL) para obtener información de la base de datos del sitio en función de los criterios que proporcione. WQL es similar a SQL, pero sigue pasando por el proveedor de SMS en lugar de directamente a la base de datos. Por lo tanto, WQL sigue cumpliendo con la configuración de acceso basada en roles.

Las consultas pueden devolver la mayoría de los tipos de objetos de Configuration Manager, que incluyen equipos, sitios, colecciones, aplicaciones y datos de inventario. Para obtener más información, consulte Introducción a las consultas en Configuration Manager.

De forma predeterminada, Configuration Manager incluye varias consultas. Puede usar el cmdlet Get-CMQuery para revisar las consultas predeterminadas. Para obtener más ejemplos de expresiones WQL, vea Consultas WQL de ejemplo.

Nota:

Ejecute cmdlets de Configuration Manager desde la unidad de sitio de Configuration Manager, por ejemplo PS XYZ:\>. Para obtener más información, consulte Introducción.

Ejemplos

Ejemplo 1: Creación de una nueva consulta para servidores de una versión específica

En este ejemplo se crea una nueva consulta denominada Server 2016 que busca clientes con el título del sistema operativo que comienza con Microsoft Windows Server 2012. Devuelve las tres propiedades siguientes: Nombre, Nombre de usuario de último inicio de sesión y Título del sistema operativo.

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"

Ejemplo 2: Creación de una consulta para dispositivos de escritorio

En este ejemplo se crea una nueva consulta denominada Dispositivos de escritorio que busca dispositivos con valores específicos para la propiedad Chassis types de la clase System Enclosure . Devuelve varias propiedades y está limitada por una colección 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 un comentario opcional para identificar aún más la consulta en el sitio.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Confirm

Solicitará confirmación antes de ejecutar el cmdlet.

Tipo:SwitchParameter
Alias:cf
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-DisableWildcardHandling

Este parámetro trata los caracteres comodín como valores de caracteres literales. No se puede combinar con ForceWildcardHandling.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Expression

Especifique la instrucción WQL que define los atributos que se van a mostrar en los resultados y los criterios para limitar los resultados.

Las instrucciones WQL suelen incluir comillas dobles ("), por lo que se establece el valor de este parámetro como una cadena entre comillas simples (').

Para obtener más ejemplos, vea Consultas WQL de ejemplo.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ForceWildcardHandling

Este parámetro procesa caracteres comodín y puede provocar un comportamiento inesperado (no recomendado). No se puede combinar con DisableWildcardHandling.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-LimitToCollectionId

Especifique cómo configurar la limitación de recopilación para esta consulta:

  • No se limita a la colección: establezca el valor de este parámetro en una cadena en blanco (""). No use la $null variable integrada.
  • Límite a la colección: especifique el identificador de una colección. Por ejemplo, "SMSDM003" para la colección Todos los clientes de escritorio y servidor .
  • Solicitud de recopilación: establezca el valor de este parámetro en "<Prompt>".
Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Name

Especifique el nombre de la consulta.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-TargetClassName

Especifique el nombre de la clase de objeto que desea que devuelva la consulta. Hay muchos tipos de objetos disponibles. En la tabla siguiente se enumeran varios nombres de clase comunes con la descripción de la consola de Configuration Manager:

Nombre de clase Descripción
SMS_R_System Recurso del sistema
SMS_Program Programa
SMS_R_UserGroup Recurso de grupo de usuarios
SMS_R_User Recurso de usuario
SMS_SiteAndSubsites Sitio y subsitios
SMS_R_UnknownSystem Equipo desconocido
Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-WhatIf

Muestra lo que ocurriría si se ejecuta el cmdlet. El cmdlet no se ejecuta.

Tipo:SwitchParameter
Alias:wi
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

None

Salidas

IResultObject