2016-02-13 87 views
1

我只是試圖用可用空間顯示驅動器號。我很確定我需要將它包含在ForEach中,但不知道如何。現在我所得到的是可用磁盤空間。顯示帶有磁盤空間的驅動器號

Get-WMIObject Win32_LogicalDisk -Filter "DeviceID='C:' or DeviceID='D:' or DeviceID='L:'" | ForEach-Object {[math]::truncate($_.freespace/1GB)} 
33 
33 
33 

回答

0

試試這個:

Get-WMIObject Win32_LogicalDisk -Filter "DeviceID='C:' or DeviceID='D:' or DeviceID='L:'" | Select DeviceID,@{N='FreeSpace';E={[math]::truncate($_.freespace/1GB)}} 

DeviceID FreeSpace 
-------- --------- 
C:     75 
D:     0 
0

相反的ForEach-Object,使用Select-Object並放置一個calculated property表達,而不是內部的自由空間計算:

Get-WmiObject ...| Select-Object DeviceID,@{Name='FreeSpace';Expression={[math]::Truncate($_.FreeSpace/1GB)}