我有一些文件夹被错误地复制了,我必须将它们合并在一起。假设文件夹 A 包含文件 X,文件夹 B 包含文件 Y,我想将文件 X 复制到文件夹 B。但是,当然,我可以面对更复杂的情况,其中文件夹 A 和 B 都包含相同的文件 X : 在这些情况下,我想保留文件的最新副本,因此 rsync 应该比较两个文件,如果源较旧,则跳过,否则目标是较旧的,覆盖。
我应该在 rsync 命令行上放置哪些参数?
这是我在谷歌上发现的,但我认为不正确。
rsync -avz --ignore-existing src dest
Run Code Online (Sandbox Code Playgroud)
手册页不知何故超出了我的范围。
PS 在两个文件夹中都存在文件的情况下,最好将旧文件覆盖到目标文件夹中,同时保留旧文件的副本,作为备份,以防您返回以前的
use*_*740 82
我会用:
rsync -abviuzP src/ dest/
Run Code Online (Sandbox Code Playgroud)
-i 打开逐项格式,显示比默认格式更多的信息-b使两个文件夹中都存在的 rsync 备份文件附加~到旧文件中。你可以控制这个后缀--suffix .suf-u 使 rsync 传输跳过在 dest 中比在 src 中更新的文件-z 打开压缩,这在通过慢速链接传输易于压缩的文件时很有用-P打开--partial和--progress--partial 如果传输中断,则使 rsync 保留部分传输的文件--progress 显示每次传输的进度条,在传输大文件时很有用