2014-10-02 159 views
4

我試圖獲得計算機上每個硬盤卷的各種屬性。Powershell 3.0:替代「Get-Volume」

我所用的cmdlet的get-volume,然後通過foreach通過它走,但cmdlet不會在Windows Server 2008中存在:(

有誰知道的方法嗎?

我只需要在驅動信中,OBJECTID/GUID,可用空間,總空間,每個卷的名稱

回答

4

WMI類Win32_Volume有你正在尋找

Get-WMIObject -Class Win32_Volume | Select DriveLetter,FreeSpace,Capacity,DeviceID,Label 

相關信息,這一點花哨腳法可以使驅動器空間性質看多了幾分吸引力。

Get-WmiObject -Class Win32_Volume | 
     Select DriveLetter, 
      @{Label="FreeSpace (In GB)";Expression={$_.Freespace/1gb}}, 
      @{Label="Capacity (In GB)";Expression={$_.Capacity/1gb}}, 
      DeviceID,Label | 
     Format-Table -AutoSize 
1

GET-體積只有在PowerShell中4

你可以這樣做壽:

Get-WmiObject Win32_LogicalDisk | Select-Object DeviceID, Size, FreeSpace, VolumeName 
+0

這樣做的工作..但我如何獲得ObjectID?它看起來像\\?\ Volume {Guid} \ – 2014-10-02 20:27:10

+0

那樣 - $ volumes = get-volume foreach($ volume in $ volumes){ echo $ volume.ObjectId } – 2014-10-02 20:30:51

+0

@ErikMandke您可以找到'ObjectID '在Get-WmiObject Win32_Volume |中選擇DeviceID' – Matt 2014-10-02 21:41:26