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

Это не нужно делать с помощью rsync , но было бы неплохо написать сценарий для этого, а rsync очень близок к тому, что я хочу.

rsync -a (или -l ) может сохранять символические ссылки, а -L может разыменовывать символические ссылки и копировать их, как если бы это обычный файл / dir. Однако можно ли сохранить символическую ссылку, а также скопировать файлы / каталоги, на которые указывает ссылка?

Вот пример. Скажем, у нас есть эта иерархия папок:

 dirA/link_to_file -> ../dirB/file dirA/link_to_dir -> ../dirC dirB/file dirB/not_this_file dirC/file dirC/file2 dirD/others 

и когда я делаю rsync -aR dirA dest (или что-то еще), я хотел бы, чтобы именно они появлялись в dest :

 dirA/link_to_file -> ../dirB/file dirA/link_to_dir -> ../dirC dirB/file dirC/file dirC/file2 

Возможно ли это с помощью rsync ? Спасибо.

Предположим, что символические ссылки, имеющие абсолютный путь или указывающие на внешнюю директорию источника, могут быть проигнорированы.

2 Solutions collect form web for “Скопировать символическую ссылку И где она указывает на использование rsync”

Это было бы возможно, если и только если вы все были в «mydir», и вы должны были rsync «mydir» из одного места в другое. Rsync не способен копировать вне пути, который вы ему даете (за исключением следующих ссылок). например

 mydir/dirA ... mydir/dirB ... ... 

Если вы знаете имя символической ссылки и хотите перенести ссылку и цель, вы можете:

 rsync -a 'symlink' . realdir="$(basename "$(readlink -f 'symlink')")" rsync -a "$realdir" . 

Первый rsync передает только symlink . Вторая команда находит реальное имя каталога, а вторая rsync передает содержимое каталога.

  • доступ к пути извне корня с символической связью
  • symlinking на `.rbenv /`: сколько слишком много?
  • Как редактировать символические ссылки?
  • не может создать символическую ссылку на CentOS 5.6 - Ошибка файла
  • Действительно ли символические ссылки влияют на использование диска?
  • Исполняемая символическая ссылка приводит к «команде не найденной»,
  • В Ubuntu есть ли способ практически объединить две папки без unionfs или aufs?
  • Символы Nginx не индексируются
  • Как перенаправить эти символические ссылки после перемещения системы?
  • только показать исходный файл и целевой файл с помощью `ls`
  • Каталоги ссылок в CentOS
  • Debian: Как разрешить ошибку перемещения?
  • Interesting Posts

    Как помнить разницу между du и df?

    Проверка состояния оборудования RAID Live

    Ошибочные результаты с обнаружением хоста с использованием nmap

    Добавление к пути против привязки из / bin

    Сценарий для сравнения 2 входных параметров и отображения общих букв (ов)

    Что означает% F и как я могу остановить его, это значит?

    Как удалить запятую (,) между двумя словами, используя Bash

    Как блокировать шифры, поддерживаемые OpenSSL в конфигурации OpenSSL?

    двунаправленная синхронизация с rsync

    «python-software-properties» не имеет кандидата на установку при установке факела

    Как сделать понижение в debian после выполнения «apt-get dist-upgrade -t jessie-backports»

    Можно ли просматривать изменения разрешений путем сравнения файлов с резервной копией?

    Fail2ban для nginx post flood игнорирует временные интервалы

    Почему uname -M возвращает пустую строку?

    Получение списка пакетов, установленных вручную по aptitude

    Linux и Unix - лучшая ОС в мире.