How do I parse data from a Get-WMIObject query int

2019-06-28 03:38发布

问题:

I have the following line of code...

get-wmiobject -class win32_computersystem | select-object username

It returns (redacted with placeholders)...

@{username=DOMAIN\jsmith}

What needs to be done to remove the padding and give me a "plain" readout of DOMAIN\jsmith?

For bonus points, how do I parse that value into just jsmith?

回答1:

You need to expand the property to get the value of username instead of a custom object with the property username. Try

get-wmiobject -class win32_computersystem | select-object -expand username

To get the username only, try:

(get-wmiobject -class win32_computersystem | select-object -expand username).Split("\")[2]

You may need to use [1] instead of [2] at the end depending on your OS. In Windows 8, you need 2, while in Windows 7(and older I think), you need 1.



回答2:

try this

Get-WmiObject -Class Win32_UserAccount | where -property name -eq jsmith | select Name