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

ただし、実際のスペースは 59.8 から 10.5 が空いています。float ではなく 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 コンピュータ名 | Select Name,@{n="Free";e={[($.freespace / 1GB) -as [int]}}, @{n="合計サイズ";e={$.size / 1GB -as [int])}}

関連情報