我一直在使用下面的一段代码来获取磁盘使用率开始在一个特定的目录:是否有更快速的方式从PowerShell中的特定目录开始使用磁盘?
$usage = (Get-ChildItem $webRoot -recurse | Measure-Object -property length -sum)
$diskUsage = $usage.sum
的问题是,这需要很长的时间,只需右键单击Windows中的目录比较,看着物业。
我们有权访问资源管理器用来获取磁盘使用情况的功能吗?还是有另一种方法比我一直使用的方法更快?
我也不确定如果在我的PS代码正在搜索的区域中存在环形链接会发生什么情况。我认为它可能锁定。
如果操作系统无法将其快速计算提供给PowerShell,那很奇怪。 – FrodoFraggins
我不认为操作系统有更快的计算。对整个磁盘使用/释放总空间的单个值将随文件系统的更改而保持最新。但想象一下,如果操作系统试图在文件系统的每个级别上都保留这些信息:假设您将一个文件更改为5级目录 - 这需要5次计算。 ...现在推断出来的东西就像打开Visual Studio - 即使SSD无法处理! :) – northben