PowerShell is pretty powerful on its own, but integrating it with WMI via the get-wmiobject cmdlet can make it more powerful and reduce the need for more complicated VBS code.
The get-wmiobject cmdlet can be used to query the computer and gather any and all WMI based information. Take a look at this short command to list the logical disk information of the computer.
Get-wmiobject Win32_LogicalDisk
This can be expanded upon using the -class, -filter and -properties options available to WMI. The following will sort the list by DeviceID and DriveType.
Get-wmiobject Win32_LogicalDisk -property DeviceId,DriveType
We can expand on this further by filtering with select-object or where-object.
These examples all use the Win32_LogicalDisk class, however you can use any WMI to get information on the computers hardware, operating system, installed applications, WMI service management and performance counters. If you have used WMI in your VBS scripts, you are familiar with what WMI can do, and this functionality has been brought into MSH as well. Some other examples you can run are:
Get-wmiobject Win32_BIOS Get-wmiobject Win32_Product Get-wmiobject Win32_PageFile Get-wmiobject Win32_IP4RouteTable
For more information see:
MSDN - Win32 Classes