시작하려면 다음과 같은 디렉토리 구조가 있습니다.
~/a/bin
~/a/src -> /home/user/b/sync/src
심볼릭 링크를 만들었습니다
cd ~/a/src
ln -s ../bin bin-xyz
이제 bin-xyz는 끊어진 링크이므로 CD로 연결할 수 있는 방법이 없습니다.
내가 무엇을 찾고 있나요?
상대 경로가 깨지지 않도록 심볼릭 링크된 폴더 내에 심볼릭 링크를 만드는 방법. 예를 들어,
cd ~/a/src/bin-xyz
또는
cd ~/b/sync/src/bin-xyz
~/a/ 또는 ~b/sync/에 bin 디렉토리가 있는 경우 작동해야 합니다.
내가 이걸 왜 찾고 있는 걸까요?
~/b/sync/src를 컴퓨터 간에 동기화하고 있습니다. 여기서 ~/a/는 두 컴퓨터 모두의 작업 공간이지만 컴퓨터의 사용자 이름은 다릅니다. 따라서 작동하는 상대 경로가 있다는 것은 작업 흐름이 더 쉬워진다는 것을 의미합니다.
동기화를 위해 bittorent 동기화를 사용하고 있습니다.
감사해요 :-)
답변1
이제 bin-xyz는 끊어진 링크입니다
그 이유는 분명합니다. 둘 중 하나는 ..
다음을 참조해야 합니다.실제상위 디렉토리가 아니면 완전히 모호해집니다.
이후로 ~/a/src -> /home/user/b/sync/src
, 나는 그것을 as로 가정 $PWD
하고 당신은 에 ln -s ../bin bin-xyz
연결하려고 합니다 . 어떤 경우에는 절대 경로를 사용해야 합니다./home/user/b/sync/src/bin-xyz
/home/user/a/sync/bin
ln -s /home/user/a/sync/bin /home/user/b/sync/src/bin-xyz
ln
이와 관련하여 공백을 채우지 않는 이유 ..
는 현재 쉘과 달리 움직임을 추적하지 않았으며 ..
실제 상위 디렉토리가 아닌 다른 것을 의미한다는 것을 알 수 없기 때문입니다.
귀하의 질문에는 실제로 두 가지 다른 시스템이 관련되어 있기 때문에 이를 수행할 수 없다는 것이 암시되어 있습니다. 이는 네트워크 공유가 마운트되었거나 두 가지 모두에 동일한 블록 장치를 사용한다는 것을 의미합니다.XY 문제-- 자세한 내용이 없으면 문제를 해결할 수 없습니다.