Copying Nested Directories With Ditto
You can copy nested directories with cp
using the -R
(recursive) flag. The way cp
works is that it replaces the target location with the source directory, wiping out whatever files or directories reside at the target location.
Conversely, the ditto
utility, available on OS X's version of Unix, does recursive directory copies by default and merges the contents of any existing directories.
As an example, here are two folders, folder1
and folder2
:
❯ exa -T folder1
folder1
├── cats
│ └── sneaky
└── dogs
└── fido
❯ exa -T folder2
folder2
└── cats
└── oreo
Using ditto
to copy folder1
to folder2
❯ ditto folder1 folder2
we get a folder2
where directories from folder1
are created and existing directories are merged together.
❯ exa -T folder2
folder2
├── cats
│ ├── oreo
│ └── sneaky
└── dogs
└── fido
See man ditto
for more details.
Last updated
Was this helpful?