用于捕获和应用两个文件夹之间差异的命令行工具

用于捕获和应用两个文件夹之间差异的命令行工具

我正在寻找一个命令行工具,它可以让我做两件事:

  1. 我给它两个文件夹(路径)

    它会创建一个包含两个文件夹之间所有差异的增量文件。

    该文件必须允许稍后在第一个文件夹上“应用”这些差异,以便获得第二个文件夹。

    使用示例=>

    compute-deltas /path/folder1/ /path/folder2/ -o delta-file

    我得到一个增量文件

  2. 我给它一个文件夹和一个增量文件,它“应用”该文件夹的所有差异

    apply-deltas /path/folder1/ delta-file -o /path/folder2/

    运行命令之前 =>/path/folder2/是一个空或不存在的文件夹

    执行命令后=>/path/folder2/从folder1和delta-file完全恢复

这是它如何工作的一个想法,如果您想到现有的工具,请告诉我,谢谢!

这就像归档(或制作图像)rsync 运行,然后应用它(运行它)。

答案1

rdiff 实用程序使用 rsync 算法生成文件 A 到文件 B 之间存在差异的增量文件(与实用程序 diff 类似,但增量格式不同)。然后可以将增量文件应用到文件 A,将其转换为文件 B(类似于补丁实用程序)。 rdiff 适用于二进制文件。

https://en.wikipedia.org/wiki/Rsync#rdiff

https://superuser.com/a/1523459/775371

rdiffdir 应该与 rdiff 类似,但可以对目录进行操作。

https://linux.die.net/man/1/rdiffdir

相关内容