使用进度条的差异替代方法,用于大规模目录比较?

使用进度条的差异替代方法,用于大规模目录比较?

我刚刚将 2,000,000 个文件(3TB)从一个 RAID rsync 到另一个 RAID。

我想确保我的数据是完整的。

rsync -c需要很长时间。

diff没有告诉我它在做什么。

有没有一种替代方案,(a) 更快,并且 (b) 在比较时显示进度?

(我用的是 Mac,它brew search diff给我apgdiff colordiff diffstat diffutils fmdiff libxdiff open-vcdiff podiff rfcdiff vbindiff bsdiff diffpdf diffuse dwdiff kdiff3 ndiff perceptualdiff rdiff-backup tkdiff wdiff ...这些能完成这个工作吗?)

答案1

cmp可能是您正在寻找的工具:它逐字节比较两个文件,每次读取一个块。一旦发现差异,它就会放弃。因此,它比校验和更快(当文件不同时不需要读取整个文件)和更可靠(它实际上执行逐字节比较)。它也比校验和更快,diff因为它不需要复杂的计算来向您显示在哪里文件不同。

您可以轻松编写一个小脚本来递归您的两个目录并根据处理的文件数量(或其累积大小)输出进度。

相关内容