如果我运行这个:
rsync -r /a/b/c /a/d/e
我会得到这个:
/a/d/e/c
但我正在寻找:
/a/d/e
这不会解决这个问题:
rsync -r /a/b/c/* /a/d/e
因为上面将跳过点文件(隐藏文件)。我该如何解决这个问题 - 复制到现有目录,在本例中为名为 的文件夹e
?
答案1
rsync
如果源以尾随 结尾,则以不同方式对待源/
。
带有尾随
/
:rsync -r source/ target
结果:创建
target
为 的副本source
。没有尾随
/
:rsync -r source target
结果:创建
target/source
为 的副本source
。
手册rsync
中提到了这一点:
您可以将源上的尾随
/
视为“复制此目录的内容”而不是“按名称复制目录”,但在这两种情况下,包含目录的属性都会传输到目标上的包含目录。
答案2
很近...
$ rsync -r /a/b/c/ /a/d/e/