I have a directory with symbolic links to other directories. I want to archive the symbolic links, not as links but as archives containing the files of directories they refer to, using tar command. How can I do this?
Asked
Active
Viewed 9.9k times
2 Answers
125
Use the -h tar option. From the man page:
-h, --dereference
don't archive symlinks; archive the files they point to
Mat
- 52,586
3
If the links are all in the root directory you can have the shell dereference them and pass to tar as arguments. For example if you have /backup/source/a and /backup/source/b, both of which are symlinks pointing to the real directory, something like the following would work
tar -cf /path/to/backup.tar /backup/source/*/
phemmer
- 71,831
-
Doesn't work here. Seems like
tar -cf /path/to/backup.tar /backup/source/a/alone doesn't even work whenais a symlink. – Zero3 Jan 03 '16 at 19:52
tar -hcf file.tar /sym1 /sym2will I get /backups twice? – Felipe Alvarez Jan 28 '15 at 23:55-Lcounts files once,-lmultiple times. See here. – Suuuehgi Apr 11 '18 at 22:02tar -czfvhwill failtar -hczfvwill work – til Jan 26 '23 at 12:49