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

GSt*_*Sto 5 filesystem bash

我有两个看起来像这样的目录:

/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
Run Code Online (Sandbox Code Playgroud)

我想将所有文件复制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
Run Code Online (Sandbox Code Playgroud)

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

Lek*_*eyn 9

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

rsync -av folder2/ folder1
Run Code Online (Sandbox Code Playgroud)

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

如果您不确定该命令是否满足您的要求,请添加--dry-run选项以显示实际发生的情况。