Я написал о похожей проблеме , где я хочу найти самые большие файлы в каталоге и всех подкаталогах (например, весь диск C:), а также перечислить их размер в хорошем простой для понимания формат (ГБ, МБ и КБ). Вот функция PowerShell, которую я использую, которая перечисляет все файлы, отсортированные по размеру в хорошем Out-GridView:
Get-ChildItem -Path 'C:\SomeFolder' -Recurse -Force -File
| Select-Object -Property FullName
,@{Name='SizeGB';Expression={$_.Length / 1GB}}
,@{Name='SizeMB';Expression={$_.Length / 1MB}}
,@{Name='SizeKB';Expression={$_.Length / 1KB}}
| Sort-Object { $_.SizeKB } -Descending
| Out-GridView
Вывод в GridView удобен тем, что позволяет легко фильтровать результаты и прокручивать их. Это более быстрая версия PowerShell v3, но в блоге также показана более медленная версия, совместимая с PowerShell v2.
И, конечно, если вам нужны только 10 самых больших файлов, вы можете просто добавить параметр -First 10
к вызову Select-Object.