전체 경로 문자열을 입력하지 않고 현재 디렉토리를 절대 경로로 연결하는 가장 쉬운 방법은 다음과 같습니다.
ln -s "$(pwd)/foo" ~/bin/foo_link
명령 의 target
(첫 번째) 인수는 ln -s
현재 디렉토리가 아닌 기호 링크의 위치와 관련하여 작동합니다. 본질적으로 작성된 symlink (두 번째 인수)는 단순히 첫 번째 인수에 제공 한 텍스트 를 보유한다는 것을 아는 데 도움이됩니다 .
따라서 다음을 수행하면
cd some_directory
ln -s foo foo_link
그 링크를 움직여
mv foo_link ../some_other_directory
ls -l ../some_other_directory
상주하는 디렉토리 를 가리 키 foo_link
려고 한다는 것을 알 수 foo
있습니다. 이것은 상대 경로를 가리키는 기호 링크에서도 작동합니다. 다음을 수행하는 경우 :
ln -s ../foo yet_another_link
그런 다음 yet_another_link
다른 디렉토리 로 이동 하여 가리키는 위치를 확인하면 항상을 가리키는 것을 볼 수 있습니다 ../foo
. 심볼릭 링크는 다양한 절대 경로에있을 수있는 디렉토리 구조의 일부일 수 있기 때문에 이것은 의도 된 동작입니다.
귀하의 경우, 입력하여 링크를 만들 때
ln -s foo ~/bin/foo_link
foo_link
foo
위치와 관련된 링크 만 보유합니다 . $(pwd)
대상 인수의 이름 앞에 놓으면 단순히 현재 작업 디렉토리의 절대 경로가 추가되어 링크가 절대 대상으로 작성됩니다.