如何合并类似结构的目录?

如何合并类似结构的目录?

我有两个如下所示的目录:

/folder1/sub1/file1.txt
/folder1/sub1/file2.txt
/folder1/sub2/file1.txt
/folder1/sub2/file2.txt

/folder2/sub1/file3.txt
/folder2/sub1/file4.txt
/folder2/sub2/file3.txt
/folder2/sub2/file4.txt

我想将所有文件复制到folder2其中folder1而不删除任何现有文件夹,以便最终得到以下内容:

/folder1/sub1/file1.txt
/folder1/sub1/file2.txt
/folder1/sub1/file3.txt
/folder1/sub1/file4.txt
/folder1/sub2/file1.txt
/folder1/sub2/file2.txt
/folder1/sub2/file3.txt
/folder1/sub2/file4.txt

我如何通过终端完成此操作?

答案1

rsync是完成这项工作的完美工具:

rsync -av folder2/ folder1

-v选项是可选的,但它会列出正在处理的文件。后面的斜线folder2必需的,否则您将得到folder1/folder2/file1.txt而不是folder1/file1.txt

如果您不确定该命令是否执行了您想要的操作,请添加选项--dry-run来显示实际发生的情况。

相关内容