CrazyRyan
Powershell 指令獲取各目錄大小

如果在一般的windows中,想要得到各個資料夾的檔案占用情況,會大力推薦TreeSize Free這款軟體,有GUI介面可以一眼就看出來容量占用情況

但如果是在公司被鎖安裝的環境,抑或是要查詢的磁碟機是mount上來的網路磁碟機,TreeSize Free這款軟體免費板會無法使用

這時候如果檔案資料夾又很多,一個一個右鍵按出來並不划算的時候(但可以考慮當薪水小偷?),所會使用到的指令

Get-ChildItem Z:\ -Directory | ForEach-Object {
     $sizeInGB = (Get-ChildItem $_.FullName -Recurse | Measure-Object -Property Length -Sum).Sum / 1GB
     [PSCustomObject]@{
         FolderName = $_.Name
         SizeInGB = "{0:N2}" -f $sizeInGB
     }
 } | Format-Table -AutoSize

輸出結果如下

FolderName               SizeInGB
----------               --------
0705                     0.12
1209                     0.21
ARC                      0.00
AB                       1.14
cdef                     0.03
For                      26.95
HKS                      0.53
images                   0.00
MT                       7.13
obsidian                 0.00
pip                      1.55
QT_Designer              0.78
Skyline                  0.40
TMP                      11.12
Tools                    7.70