合并macOS中的文件夹和子文件夹


1

我有2个文件夹需要合并。

每个文件夹内都有子文件夹。在大约50%的情况下,这些子文件夹都存在于两个父文件夹中。

例如

 FOLDER 1 | FOLDER 2
  --------------------- 
    SUB 1 | SUB 1 

    SUB 2 | SUB 2 

    SUB 3 | SUB 3 

尽管子文件夹具有相同的名称,但它们不包含相同的数据,我希望将它们合并。这不是一个覆盖另一个实际上需要合并的覆盖的情况,因为每个包含唯一的数据。

在Mac OS X 10.10中可以吗?我还可以通过其他运行Mac OS X 10.11和macOS 10.13的计算机上的Dropbox访问同一文件夹。


1
正如您提到的,尽管文件和文件夹的名称相同,但其中包含的数据可能并不相同。我的建议是b手动执行合并。为了使事情变得简单,您可以在其中任何一个中初始化Git存储库,暂存并提交所有文件。之后,复制其他目录的内容,替换所有文件和文件夹。现在,您可以在存储库中查看修改后的数据,并轻松执行合并。
Nimesh Neema

Answers:


3

来自macOS Sierra文档。

合并两个具有相同名称的文件夹:

如果在两个不同的位置有两个名称相同的文件夹,则可以将它们合并到一个文件夹中。

按住Option键,然后将一个文件夹拖到包含相同名称的文件夹的位置。在出现的对话框中,单击“合并”。

仅当其中一个文件夹包含另一个文件夹中没有的项目时,才会出现“合并”选项。如果文件夹包含同名文件的不同版本,则唯一的选择是“停止”或“替换”。

https://support.apple.com/kb/PH25633


2

打开终端,然后使用ditto

ditto [source] [destination]

例如:

$ cd ~
$ mkdir A/
$ mkdir A/1
$ mkdir A/2
$ mkdir A/3
$ touch A/1/1.txt
$ touch A/2/2.txt
$ mkdir B
$ mkdir B/1
$ mkdir B/3
$ touch B/1/x.txt
$ touch B/3/z.txt
$ ditto A B
$ open .

1
El Capitan没有merge,但确实有ditto
lhf

我建议使用该-V选项来查看此命令的进度。这是一种检查它是否正在按预期执行的好方法。

1
可以在一行中创建虚拟文件夹结构:mkdir -p A/{1..3} B/{1,3}或:mkdir -p {A,B}/{1..3};rm -r B/2
Yoric

请注意,与rsync -avh A/* B/
Yoric

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.