使用 rsync 将合并文件移动到新目录无法显示进度或创建备份

使用 rsync 将合并文件移动到新目录无法显示进度或创建备份

我有一堆旧备份,每个备份都是一个目录,其中包含上次备份的增量更改。每个目录下有任意嵌套的目录和文件。我需要将它们全部移动到一个目录中,该目录合并所有这些更改。我首先从最旧的备份开始,并且需要保留在多个备份中相同出现的文件的每个版本。这些文件需要移动,而不是复制,尽管如果每个源中都留下一个空目录框架以供后续删除,那也可以。

我发现这个答案它似乎拥有我需要的所有组件,尽管我必须拼凑一个 rsync 命令来完成我想要的一切。但是,它不起作用。我的命令如下所示:

rsync -Ea --link-dest=/tmp/test1/ --remove-source-files -b --backup-dir=/tmp/test2/ --info=BACKUP,COPY,DEL,FLIST,MISC,MOUNT,NAME,PROGRESS,REMOVE,SKIP,STATS,SYMSAFE  test1/ test2/

请注意,该info命令是我尝试查看 rsync 正在做什么,但即使使用全部可能的标志,它仍然没有透露它正在为哪些文件创建链接!

但更困难的问题是该命令实际上并没有创建任何备份!我尝试忽略该--backup-dir选项并得到相同的结果。我也尝试--suffix=~在这两种情况下添加。从未创建任何备份文件!

例如,在运行上述命令之前,我创建了具有不同内容的“test1/1.txt”和“test2/1.txt”。运行rsync后,“test2/1.txt”已覆盖“test1/1.txt”。由于我正在使用该-b选项,因此我希望1.txt将原始文件移动到备份文件,例如1.txt~.

相关内容