文章目录
1.相关说明
在 Windows 11 中,WMIC(Windows Management Instrumentation Command-line)工具已被废弃,微软推荐使用Windows PowerShell来替代WMIC进行系统管理和信息查询。PowerShell提供了Get-CimInstance和Get-WmiObject命令来获取和操作WMI信息,这两个命令可以作为WMIC的替代品。
- Get-CimInstance 命令
Get-CimInstance是推荐使用的命令,因为它基于更现代的Windows Management Infrastructure (MI) API。与Get-WmiObject相比,Get-CimInstance提供了更好的远程管理支持和性能。 - Get-WmiObject 命令
尽管Get-WmiObject是基于旧的WMI技术,但它在较老的PowerShell版本和Windows版本中仍然可用。对于一些特定的场景或者习惯了Get-WmiObject的用户,这个命令仍然是一个有用的工具。
2.客户端调整
(1)根据原先通过WMIC获取到的相关数据定位对应的Get-CimInstance 命令如下:
获取cpuId数据:
bash
powershell "Get-CimInstance -ClassName Win32_Processor | Select-Object ProcessorId"
获取逻辑磁盘数据:
bash
powershell "Get-CimInstance -ClassName Win32_LogicalDisk"
(2)目前没有封装好的插件依赖可以直接获取需要的数据,但是客户端可以使用 Node.js 的 child_process 模块来执行 PowerShell 命令,固需要先封装两个分别使用 child_process 模块执行上面两个命令获取cpu数据和逻辑磁盘数据
(3)调整原先获取数据逻辑:先复用原先通过WMIC获取数据方法,当监听到报错时调用新封装的方法获取数据