我想将 dir 1 中的不同内容复制到 dir 2 保持结构,不同的是每个文件夹/logs/
内容的内容,如果相同则覆盖,如果不存在则复制。
我正在尝试,rsync
但它不起作用,它只是创建另一个以目标中的源命名的目录。
一些照片(结构、内容、文件夹名称、顺序是相同的,只是改变的是/logs/
每个代码用户名文件夹内的文本文件)。
[![es51 中的所有代码-用户名文件][1]][1]
正如您所看到的,rsync
只是在目标中创建源文件夹,它就像一个cp -r source destination
,我想要的是覆盖日志,以便我在每个文件夹中都有每个日志文件,从而维护结构。
答案1
如果您想要rsync
目录的内容而不是顶级目录,则必须rsync
以/.
例子:
$ rsync /path/to/copy/ /path/to/put
这将获取 的内容/path/to/copy
(但不是顶级目录)copy
并将其同步到/path/to/put
.你不需要这样做,但我更喜欢这种表示法,因为它确实向其他人传达了意图:
$ rsync /path/to/copy/ /path/to/put/.
这表示复制 的内容/path/to/copy
并将其放入目录 中/path/to/put/.
。
因此,在您的屏幕截图示例中,您将执行以下操作:
$ screen -dmS Rsync \
rsync --archive --progress /media/pi/copias/Tribal/ /media/pi/servidor/.