我正在使用BGInfo为我的公司编写脚本,并试图找出如何获取WMI查询的结果并将数学运算符应用于它。例如,我正在运行查询:
SELECT AdapterRAM FROM Win32_VideoController
评估为
268435456 (bytes)
但是,我希望这个值采用MB的形式,所以我想将此结果除以1,048,576来获取
256 MB
有办法做到这一点吗?
答案 0 :(得分:2)
WQL
(WMI
使用的语言)只是SQL语言的一个子集,不支持算术运算符,有关详细信息,请查看WQL documentation
答案 1 :(得分:0)
正如@RRUZ所提到的,WQL中不支持算术运算符。但是,在PowerShell等scirpting语言中,您可以使用转换单位或乘数将值从字节更改为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