我有一个文件共享需要数小时才能扫描。最近我被要求制作一个脚本,可以在一分钟内超过100个文件发生变化时发送邮件。我怎么去解决他的问题?可能是powershell,可能是任何可以启用这种“扫描”的东西。跟踪大文件共享上的最后修改日期
-2
A
回答
1
如果你想这对每运行5分钟,你可以检索与LastWriteTime
属性值不到5分钟老的所有文件,然后按分钟的文件:
$Threshold = (Get-Date).AddMinutes(-5)
$FilesPerMinute = Get-ChildItem C:\folder\share -Recurse |Where-Object {
$_.LastWriteTime -ge $Threshold
} |Group-Object { $_.LastWriteTime.Minute } -NoElement
if($FilesPerMinute |Where {$_.Count -ge 100}){
# alert
}
你可能发现FileSystemWatcher
在您的情况下是更好的选择,尽管
+0
我会试试这个!谢谢 –
+0
我试图跟踪的文件共享超过4 TB的文件夹和文件。所以这可能不会在5分钟内完成,你能想到任何可能做到这一点的事情吗?也许FileSystemWatcher? –
+0
是的,审计 - 打开文件系统审计,每分钟解析安全日志文件,看看是否有超过100个文件被修改 –
相关问题
- 1. BASH:显示修改日期的最后修改文件
- 2. 如何获取上传文件的最后修改日期?
- 3. 如何更改文件的最后修改日期
- 4. 共享点记录/跟踪
- 5. Windows Installer更改文件最后修改日期
- 6. 上传后修改的日期更改
- 7. Unix/SAS上的文件修改日期
- 8. 查找文件的最后修改日期的特殊扩展
- 9. 播放框架得到的最后修改日期的文件
- 10. URL中的最后修改日期
- 11. 获取Inno Setup文件的最后修改日期Pascal脚本
- 12. 在VB6中获取文件的最后修改日期
- 13. 获取文件的最后修改日期
- 14. 获取文件的最后修改日期用C
- 15. 获取文件元数据(最后修改日期)的开销
- 16. 获取文件的最后修改日期与Windows
- 17. 在sitecore中获取文件的最后修改日期
- 18. 在AppleScript中获取文件的最后修改日期
- 19. 使用Java获取文件的最后修改日期
- 20. 如何获取在线文件的最后修改日期?
- 21. 获取远程文件的最后修改日期
- 22. 获取html文件的最后修改日期
- 23. 获取文件的最后修改日期与Logstash
- 24. 如何在Perl中获取文件的最后修改日期?
- 25. FTP获取最后一次修改文件的日期
- 26. Samba修改文件减少3小时的“最后修改日期”
- 27. 现有表的日期跟踪更改
- 28. 更改多个文件夹的修改日期以匹配最近修改的文件的日期
- 29. 更新最后修改日期列
- 30. MySql:知道表最后修改日期
“需要数小时才能扫描”。 “扫描”是什么意思,到目前为止您尝试了什么? –
我一直在寻找有关此文件共享的权限组。运行文件共享中的每个文件夹并查找ACL需要花费数小时。 到目前为止,我一直都没有尝试过,因为我无法围绕如何跟踪由分钟改变的文件中的更改,当共享花费数小时来“扫描”时。 –
如果您只对文件本身的更改感兴趣,则不需要每次都检索ACL –