我有一个大文件夹需要传输到远程站点。该文件夹目前总共 10GB,但包含许多小得多的文件。
我们不想每次都复制整个 10GB,而是希望大量减少数据传输大小,只传输新的或更改的文件。我们计划这样做:
SOURCE_DIR是包含所有文件并且是最新的文件夹。
COMPARE_DIR是远程端文件夹的目录“克隆”。基本上是上次传输文件之前的所有文件。
TRANSFER_DIR是一个空文件夹(我们希望)ROBOCOPY 可以将新文件或更改的文件SOURCE_DIR放入其中COMPARE_DIR。
一个例子:
SOURCE_DIR有 4 个文件:1.txt、2.txt、3.txt、4.txt
COMPARE_DIR有 3 个文件:1.txt、2.txt、3.txt
ROBOCOPY 命令将比较SOURCE_DIR并COMPARE_DIR看到 4.txt 不在,COMPARE_DIR因此将其复制到TRANSFER_DIR
TRANSFER_DIR然后只有 4.txt 文件,我们可以将其复制到远程端并放置在文件夹中,使其与我们的SOURCE_DIR这一端相同。
这可以通过使用 --compare-dest=DIR 参数的 rsync 来完成,但由于这是 Windows,除非需要,否则我宁愿不必安装 rsync。