PowerShell 命令输出截断浮点值的小数

PowerShell 命令输出截断浮点值的小数

我正在使用以下命令检查远程服务器上的空间:

Get-WmiObject -Class win32_logicalDisk -ComputerName computer-name | Select Name,@{n="Free";e={[math]::trun
cate($_.freespace / 1GB)}}, @{n="Total Size";e={[math]::truncate($_.size / 1GB)}}

它输出:

Name Free Total Size
---- ---- ----------
C:     13         59
D:      0          0

但是,实际空间是:10.5 从 59.8 中释放。这就像使用 int,而不是 float。有人知道我该如何更改它以显示真正的浮点值吗?

答案1

找到了。看来我需要使用腹肌而不是截短功能。

Get-WmiObject -Class win32_logicalDisk -ComputerName computer-name | Select Name,@{n="Free";e={[math]::abs(
$_.freespace / 1GB)}}, @{n="Total Size";e={[math]::abs($_.size / 1GB)}}

答案2

或 Get-WmiObject -Class win32_logicalDisk -ComputerName computer-name | Select Name,@{n="Free";e={[($.freespace / 1GB) -as [int]}},@{n="总大小";e={$.大小 / 1GB -as [int])}}

相关内容