Как я могу скопировать папку, содержащую символические ссылки, и сохранить символические ссылки в месте назначения Папка? Я делаю что-то подобное с PHP / Bash:
system("cp -r production-clone-target production-sites/{$instanceName}");
, но символические ссылки не появляются в папке назначения.
Оставив в стороне обоснованные опасения по поводу использования system()
в вашей PHP программе:
cp
может не иметь стандартизированных опций для этого, которые являются общими для Linux и BSD, но pax
имеет.
( cd source && pax -p p -r -w * destination/ )
Попробуйте добавить переключатель - preserve = links
в свою команду cp
.
Из man cp
:
--preserve[=ATTR_LIST]
preserve the specified attributes (default: mode,ownership,timestamps),
if possible additional attributes: context, links,xattr, all
Изменить: если в OS X; используйте cp -a
.