查找上次运行碎片整理WMI或registry项

我试图发现是否有我们的服务器上运行碎片整理。 为了保存我自己去每一个加载碎片整理程序,并检查“最后一次运行”列,我想WMI可能有这个信息。 我一直在检查Win32_Volume类,可以看到这可以用来启动磁盘碎片整理和运行分析。 我无法find的是上次完成的任何提及。 我宁愿只是拉一个对象,而不是每次运行一个分析。 有没有办法通过WMI或注册码find这些信息?

在应用程序事件日志中运行查询事件ID 258

PS F:\ps1> get-winevent -filterHashTable @{Logname = 'Application'; ID = '258';} | select-object -first 1 -prop machinename,timecreated,message | fl MachineName : coyote.acme.com TimeCreated : 9/24/2014 2:28:07 AM Message : The disk defragmenter successfully completed defragmentation on (C:) 

我看到你已经有了这个答案。 但是如果你想使用DefragAnalysis,你可能会看到这个问题有点不同。

 $driveLetter = Get-WmiObject -Class Win32_Volume -Filter "DriveLetter = 'C:'" $driveDefrag = $driveLetter.DefragAnalysis() $driveDefrag.DefragAnalysis 

如果操作系统认为需要碎片整理, $report.DefragRecommended会显示, $report.DefragAnalysis也有很多额外的有用信息。