Invoke-CMWmiQuery
Ejecute una consulta WMI.
Syntax
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
El cmdlet Invoke-CMWmiQuery ejecuta una consulta de Instrumental de administración de Windows (WMI). A diferencia de otros cmdlets o herramientas de consulta, con este cmdlet la conexión y el espacio de nombres ya están configurados para usted.
También puede usar este cmdlet para crear una consulta con lenguaje de consulta WMI (WQL). Configuration Manager usa WQL para consultas en colecciones. WQL es similar a SQL, pero sigue usando el proveedor de SMS, por lo que se rige por los controles de acceso basados en roles.
Nota:
Ejecute Configuration Manager cmdlets desde la unidad de sitio Configuration Manager, por ejemploPS XYZ:\>
. Para obtener más información, consulte Introducción.
Ejemplos
Ejemplo 1: Ejecución de una consulta WQL
El primer comando crea una consulta WQL y la almacena en la variable $WQL . El segundo comando ejecuta la consulta almacenada en la variable .
$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
Ejemplo 2: Ejecución de una consulta WMI para colecciones de dispositivos
El primer comando crea un objeto de búsqueda y almacena el objeto en la variable $Search .
El segundo comando especifica que el orden de búsqueda es ascendente por CollectionID.
El tercer comando agrega parámetros de búsqueda al objeto $Search . En este caso, la consulta busca colecciones de dispositivos.
El último comando ejecuta la consulta almacenada en $Search. Especifica SMS_Collection como la clase que contiene la propiedad 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
Ejemplo 3: Ejecución de una consulta WMI para sitios por estado
El primer comando borra los parámetros de búsqueda de cualquier objeto de búsqueda existente.
El segundo comando agrega parámetros de búsqueda al objeto $Search . En este caso, la consulta busca sitios.
El último comando ejecuta la consulta almacenada en $Search. Especifica SMS_Site como la clase que contiene la propiedad Status del sitio.
$Search.Clear()
$Search.Add("Status", $True)
Invoke-CMWmiQuery -ClassName "SMS_Site" -Search $Search
Ejemplo 4: Ejecución de una consulta WMI para sitios por nombre
El primer comando borra los parámetros de búsqueda de cualquier objeto de búsqueda existente.
El segundo comando agrega parámetros de búsqueda al objeto $Search . En este caso, la consulta busca sitios.
El último comando ejecuta la consulta almacenada en $Search. Especifica SMS_Site como la clase que contiene la propiedad SiteName .
$Search.Clear()
$Search.Add("SiteName", $null, [Microsoft.ConfigurationManagement.PowerShell.Provider.SearchParameterOperator]::NotEquals)
Invoke-CMWmiQuery -ClassName "SMS_Site" -Search $Search
Ejemplo 5: Ejecución de una consulta WMI para aplicaciones
El primer comando borra los parámetros de búsqueda de cualquier objeto de búsqueda existente.
El segundo comando agrega parámetros de búsqueda al objeto $Search . En este caso, la consulta busca aplicaciones.
El último comando ejecuta la consulta almacenada en $Search. Especifica SMS_Application como la clase que contiene la propiedad CI_ID del sitio.
$Search.Clear()
$Search.AddAdhoc("CI_ID > 0")
Invoke-CMWmiQuery -ClassName "SMS_Application" -Search $Search -Option Lazy
Parámetros
-ClassName
Especifica el Configuration Manager clase WMI que desea consultar.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Solicitará confirmación antes de ejecutar el cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Context
Especifique el contexto WMI como una tabla hash. Es una lista de pares nombre-valor que se pasan a un proveedor WMI que admite información de contexto para una operación personalizada.
Type: | Hashtable |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DisableWildcardHandling
Este parámetro trata los caracteres comodín como valores de caracteres literales. No se puede combinar con ForceWildcardHandling.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ForceWildcardHandling
Este parámetro procesa caracteres comodín y puede provocar un comportamiento inesperado (no recomendado). No se puede combinar con DisableWildcardHandling.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Option
La opción más común es Fast
.
Especifique una opción de consulta:
None
:PredeterminadoLazy
: de forma predeterminada, el cmdlet carga propiedades diferidas.Fast
: use esta opción para no cargar propiedades diferidas. Esta opción puede devolver resultados más rápidamente para algunas clases.ExpectResults
ExpectResultsThrowException
& : si la consulta no devuelve ningún resultado, inicie una excepción. Normalmente, esta excepción finaliza un script.FastExpectResults
LazyExpectResults
& : estas opciones se combinanFast
yLazy
conExpectResults
.ExpectResultsSoftFail
: si la consulta no devuelve ningún resultado, genere un error, pero no finalice el script.
Para obtener más información sobre las propiedades diferidas, vea Configuration Manager propiedades diferidas.
Los siguientes valores son solo para uso interno:
- Clone
- NoMask
- NoRefresh
- IgnoreNoResults
Type: | QueryOptions |
Aliases: | Options |
Accepted values: | None, NoRefresh, Lazy, Fast, ExpectResults, FastExpectResults, LazyExpectResults, Clone, ExpectResultsSoftFail, ExpectResultsThrowException, NoMask, IgnoreNoResults |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Query
Especifica una instrucción lenguaje de consulta WMI (WQL).
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Search
Especifica un objeto SMSProviderSearch .
Type: | SmsProviderSearch |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Muestra lo que ocurriría si se ejecuta el cmdlet. El cmdlet no se ejecuta.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entradas
None
Salidas
IResultObject[]
IResultObject
Vínculos relacionados
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de