我正在尝试对我们拥有的系统进行增量备份,并且正在许多目录中移动大量附件文件。我想将我当前的附件与我的新附件合并。例如:
生产附件目录:
Dir A/ Dir B/ File 1, File 2
附件备份目录:
Dir A/ Dir B/ File 3, File 4
合并之后我想看看:
Dir A/ Dir B/ File 1, File 2, File 3, File 4
该目录有数百个这样的文件夹,所以我想以递归方式进行。 Linux / Unix中是否有可以执行此操作的命令?我已经研究过像Union这样的命令,但我不确定这是否能解决这个问题。
答案 0 :(得分:0)
我并非100%确定我理解您的问题,因为我的解决方案似乎太简单了,但是......
cp -R(递归)可以为您提供所需的信息。
首先获取备份副本并创建副本:
cp -R [备份目录] merged_attachments
然后强制并递归生产副本(这样您就拥有了最新的生产版本,以防发生冲突):
cp -fR [生产目录] / * merged_attachments
最后的merged_attachments目录将包含两个源目录的相同结构。
如果您想使用以下命令将备份复制到生产目录中,则可以完成相同的操作:
cp -nR [备份目录] / * [生产目录]
使用noclobber标志,这样您就不会使用备份版本覆盖生产文件。