Searching WMI

Ladies and Gents

A lot people have been asking me: “How do I know if there is a WMI provider for xxxx?”.  Quite often a quick search in will get you the results, but there is a way of searching WMI from within PowerShell.  I have created a really simple script that allows me to search the CIMV2 namespace really easily.  Here’s the script:


$text = $Args[0]


“Searching Namespace: root\cimv2 …… “

$Results = gwmi -namespace “root\cimv2” -list | where-object {$ -like (“*” + $text + “*”)}

if ($Results -eq $Null)



     write-host “No Matches for:” $Text






     write-host “Class”

     write-host “—–“


     foreach ($Class in $Results)


           write-host $Class.Name






The code to do the searching is 1 line and simply uses where-object to filter the root\cimv2 namespace.  The rest is just for iterating round the collection of $Results and formatting it nicely.  I know I could write this in a 1 liner each time I wanted to search WMI, but I`m lazy.  Using this I can concentrate on WMI which is tough enough and not have to think about how to search it J

I then create a function that hooks to this script.  I put the following line in my profile in order to do this:


new-item -path function:search-cimv2 -value {& ‘C:\scripts\search-cimv2.ps1’ $Args[0]}



Simply type in search-cimv2 disk and it will return all the WMI classes in the CIMV2 namespaces that contain the text ”Disk”.  Note the use of * in the script that means it will fine the text anywhere in the class name.


Hope this helps



Comments (4)

  1. Anonymous says:

    Ladies and Gents Many months ago I posted a script on how to search a namespace for different classes.

  2. Anonymous says:

    Ola Demo 3 – How Do I Know Which Classes to Use In this demo I firstly used WMI Browser, which provides

  3. Anonymous says:

    Hi ,

    I need some information regarding WMI class in microsoft office.

    My queries are as follows:

    1) Is there any Windows Message Instrumentation(WMI) class to detect the microsoft office related KB’s installed in windows XP system.

    2) Is there any other way to detect the microsoft office updates/KB’s that got installed in windows XP.

    Kindly update me your suggestions.

    -Thanks & regards,