1

我正在使用BGInfo为我的公司编写一些脚本,并试图弄清楚如何获取 WMI 查询的结果并将数学运算符应用于它。例如,我正在运行查询:

SELECT AdapterRAM FROM Win32_VideoController

评估为

268435456 (bytes)

但是,我希望这个值采用 MB 的形式,所以我想将这个结果除以 1,048,576 得到

256 MB

有没有办法做到这一点?

4

2 回答 2

2

(WQL使用的语言WMI) 只是 SQL 语言的一个子集,不支持算术运算符,有关更多信息,您可以查看WQL documentation.

于 2013-06-12T02:33:40.167 回答
0

正如@RRUZ 提到的,WQL 中不支持算术运算符。但是,在 PowerShell 等脚本语言中,您可以使用转换单位或乘数将值从字节更改为 MB。

例如,

$adapterRAM = Get-WMIObject -Query "SELECT AdapterRAM FROM Win32_VideoController"
$adapterRAM.AdapterRAM/1MB

根据以下评论更新答案:

(Get-WMIObject -Query "SELECT AdapterRAM FROM Win32_VideoController").AdapterRam/1MB

如果上述查询导致 Win32_VideoController 的多个实例,您必须索引到正确的实例。例如,

(Get-WMIObject -Query "SELECT AdapterRAM FROM Win32_VideoController")[0].AdapterRam/1MB
于 2013-06-12T04:59:23.277 回答