如何检查大文件是否已更改?

时间:2014-06-08 17:29:19

标签: python python-2.7 hash

我正在运行一个脚本,检查新文件是否可用或文件是否已更改。

root/
├── Sub1
│   ├── Sub1.iso
│   └── Sub1.txt
├── Sub2
│   ├── Sub2.iso
│   ├── Sub2.txt
└── Sub3
    └── Sub3.iso

当文件为新文件时,将创建item.txt 文件更改后,将重新创建item.txt

创建和修改时间戳的效果不够,因为文件可以复制/粘贴,也可以是其他文件但仍然是同一文件。

我的想法是md5哈希。但这些文件每个可能高达50 GB。这将花费太多时间进行比较。

通常的工作流程是:

  • 循环遍历root
  • 的所有子文件夹
  • 比较大小以及.iso与现有数据库条目的必要哈希值
  • 如果文件是新的/更新的,则创建.txt
  • 在数据库filename | hash
  • 中保存/更新哈希

好的,因为完整.iso的哈希需要花费太多时间,并且时间戳不够有效

还有哪些方法可以检查文件是否已更改/更新?

注意:它必须是OS独立的,并且应该在python 2.7中可行 我想过只读前100块或类似的东西。

0 个答案:

没有答案