외부 파일/디렉토리에 대한 심볼릭 링크는 확인되지만(대상 파일 복사) 내부 심볼릭 링크(복사 트리 내의 파일을 가리킴)는 유지되는 디렉토리를 반복적으로 복사하는 쉬운 방법이 있습니까?
예:
touch outsidefile
mkdir src
ln -s ../outsidefile src/sym1
touch src/insidefile
ln -s insidefile src/sym2
cp [???] src dest # or other command
원하는 결과:
$ ls dest
insidefile
sym1
sym2 -> insidefile
즉 sym1
, 심볼릭 링크를 유지하는 일반 파일입니다 sym2
.
답변1
rsync -a --copy-unsafe-links src/ dest
man
페이지 에서 :
--안전하지 않은 링크 복사
이는 rsync에게 복사 트리 외부의 심볼릭 링크에 대한 참조를 복사하도록 지시합니다.
--relative
소스 경로 자체의 모든 심볼릭 링크와 마찬가지로 절대 심볼릭 링크도 사용 시 일반 파일로 처리됩니다 . 이 옵션도 지정 하면--copy-links
추가 효과가 없습니다.[...]
--links --안전하지 않은 링크 복사 안전하지 않은 모든 심볼릭 링크를 파일로 변환하고 모든 안전한 심볼릭 링크를 복사합니다.