Synchronization 正在同步文件系统,如何检测文件是否已更改?

Synchronization 正在同步文件系统,如何检测文件是否已更改?,synchronization,Synchronization,我需要编写一个简单的备份组件,将文件夹及其子文件夹同步到服务器。对于增量备份,我只想上传更改的文件。跟踪文件系统中的更改的最佳方法是什么?一些现有的软件,如OrtoiseSVN和office groove,具有检测文件更改的能力。我想知道实现类似事情的最佳方式是什么 谢谢 你的问题有点模棱两可: 如果您试图浏览所有文件并确定哪些文件需要发送到备份服务器: 最简单的方法是比较修改时间;如果本地系统上的文件是在备份系统上的文件之后修改的,则该文件已更改,需要更新备份。(可以使用touch之类的方法修

我需要编写一个简单的备份组件,将文件夹及其子文件夹同步到服务器。对于增量备份,我只想上传更改的文件。跟踪文件系统中的更改的最佳方法是什么?一些现有的软件,如OrtoiseSVN和office groove,具有检测文件更改的能力。我想知道实现类似事情的最佳方式是什么


谢谢

你的问题有点模棱两可:

如果您试图浏览所有文件并确定哪些文件需要发送到备份服务器:

最简单的方法是比较修改时间;如果本地系统上的文件是在备份系统上的文件之后修改的,则该文件已更改,需要更新备份。(可以使用
touch
之类的方法修改文件的修改时间,但对于简单的情况,您可能不需要担心这一点)

一种更复杂(且计算成本更高)的方法是计算文件的散列码,并对其进行比较;如果散列不同,则需要进行备份

如果您试图检测文件被更改的时刻:


您可以使用a(在C#/Windows中)或与之相当的语言/OS。

如果Mac OS X有一个东西叫做。Windows中也必须有相应的服务。

编程环境?当您说“检测更改”时,您的意思是确定文件是否与备份不同,还是希望在修改文件时做出反应?