目前,我正在检查树中每个文件的修改文件时间(来自 fstat 的 st_mtime)的 XOR 校验和。我将它与找到的文件数量和文件大小校验和(允许溢出)结合起来是安全的,但我非常偏执地认为这可能并且会在最极端的病理情况下导致误报。
我正在考虑的一个替代(安全)选项是按名称和文件内容的 CRC32 保留每个文件的清单。但是,此选项非常慢,或者至少比我想要的许多文件(比如说数千个)要慢。
所以问题是,您可能有哪些提示或技巧来确定目录树中的任何文件是否已更改?我想避免逐字节比较而不牺牲太多可靠性。
非常感谢您的建议。