簡體   English   中英

如何使用PowerShell解析Windows命令`wmic`的output

[英]How to parse the output of the Windows command `wmic` using PowerShell

我正在嘗試解析 output 的:

wmic copmutersystem

net.exe config workstation

使用 PowerShell 獲取 object 作為鍵/值對和/或將其轉換為 JSON 字符串。

我知道有一個 PowerShell 等效命令:

Get-CimInstance  -Class Win32_computersystem

但是這里的問題是弄清楚如何使用 PowerShell 為wmic CMD 行解析類似的 output。

使用Get-CimInstanceConvertTo-Json命令行開關:

Get-CimInstance -Class Win32_ComputerSystem | ConvertTo-Json

編輯:此答案的先前版本使用了Get-WMIObject ,但已被棄用

wmic可以output csv或者xml,但是顯然get-wmiobject或者get-ciminstance是首選。 您只需要找到 class 名稱而不是別名。 wmic的創建者和powershell是同一個。

wmic computersystem list /format:csv | convertfrom-csv | select model

Model
-----
OptiPlex 7490 AIO

列出 wmic class 別名:

wmic alias list brief
wmic alias where "friendlyname = 'computersystem'" list brief
wmic alias where "friendlyname like '%comp%'" list brief

FriendlyName    PWhere  Target
ComputerSystem          Select * from Win32_ComputerSystem

例如:

ComputerSystem                                   Select * from Win32_ComputerSystem
get-ciminstance win32_computersystem

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM