Создать символические ссылки рекурсивно для всего дерева

20

Я ищу команду, которая воссоздаст целое дерево файлов в другом каталоге. Я бы предпочел, чтобы все символические ссылки были абсолютными. Могу ли я сделать это с помощью find и xargs? ;-)

lzap
источник
1
Я не понимаю идею. Если вы, например, создадите символическую ссылку, /tmp/somedirectoryуказывающую на /home/me/somegreatdir, тогда все содержимое somegreatdirбудет отображаться в /tmp/somedirectory. Для этого требуется всего одна символическая ссылка для всего дерева. Или что еще ты хочешь?
шутит

Ответы:

26

cp -rs source/ dest/должен сделать свое дело. Структура каталогов будет воссоздана в dest /, где каждый файл является символической ссылкой на своего аналога в источнике.

Пабло Кастеллацци
источник
Также моя первая попытка. Не удалось получить cpсимволическую ссылку для source/some_deeper_dir/files.
Jokester
1
По моему опыту, вы должны использовать полный путь к источнику (например cp -Rs /home/myusername/source dest), иначе он будет жаловаться. вот ссылка: lists.gnu.org/archive/html/help-gnu-utils/2004-08/msg00039.html
22degrees
4

Если cp -rsответ не тот, который вы ищете, lndirможет быть правильный ответ.

Микко Ранталайнен
источник
Обработаны идеально глубокие подкаталоги структур. Установил его на Debian используяsudo apt-get install xutils-dev
user299481