How to copy a directory with symbolic links and resolve them?
10,918
Solution 1
Just use cp
command with -r
option to recursively copy. No need of a script all together,
Solution 2
cp -rL /source /destination
r = recursive L = follow and expand symlinks
Author by
Pwdr
Interaction Design student who uses Processing and OpenFrameworks for his creative coding projects. SOreadytohelp
Updated on June 05, 2022Comments
-
Pwdr almost 2 years
I would like to recursively copy the contents of a directory which contains symbolic links (symlinks) as well as normal files with a Bash / Shell Script. I don’t know how to copy the symlink-contents. The pseudocode would look something like this:
for file in directory do if is symlink resolve symlink and copy its contents else copy the file / folder
My directory-structure looks like this:
base/ dir1/ symlinkdir1*/ (--> ../somewhere/else/dirA) /file1 /file2 symlinkdir2*/ (--> ../somewhere/else/dirB) /file3 /file4 …
After the copy-procedure, I would like to have a directory-structure like this:
base/ dir1/ symlinkdir1/ (no symlink, actual directory) /file1 /file2 symlinkdir2/ (no symlink, actual directory) /file3 /file4 …