~/[경로/파일] 대신 ~/에 대한 심볼릭 링크

~/[경로/파일] 대신 ~/에 대한 심볼릭 링크

~/모든 도트 파일을 다음 으로 옮겼습니다 .~/data/dotfiles

그럼 내가 그랬어ln -s ~/data/dotfiles/[filename] ~/

내 의도는ln -s ~/data/dotfiles/[filename] ~/[filename]

여기에는 광산 및 기타가 포함 .vimrc됩니다 .bashrc.

이제 터미널 세션을 열거나 vim을 열면too many levels of symbolic links.

내 홈 디렉터리 또는 파일이 있는 디렉터리에서 심볼릭 링크를 제거해야 할지 잘 모르겠습니다.

어떤 도움이라도 대단히 감사하겠습니다.

필요에 따라: jsw:dotfiles jsw$ ls -l ~/.vimrc ~/data/dotfiles/.vimrc lrwxr-xr-x 1 jsw staff 6 1 Aug 13:54 /Users/jsw/.vimrc -> .vimrc -rw-r--r-- 1 jsw staff 11044 31 Jul 10:51 /Users/jsw/data/dotfiles/.vimrc

답변1

lrwxr-xr-x 1 jsw 직원 6 8월 1일, 13:54 /Users/jsw/.vimrc -> .vimrc

실수를 했습니다. 이는 다음과 같은 결과로 생성됩니다.

ln -s .vimrc .vimrc

()보다 더 복잡한 작업을 수행할 수도 있지만 어쨌든 실제 파일이 ln -s foo/../.vimrc .vimrc없는 한 링크는 생성되지만 쓸모가 없습니다. 액세스하려고 하면 다음을 얻게 됩니다..vimrcln

foobar: ./.vimrc:
Too many levels of symbolic links

여기서 "foobar"는 액세스하려는 애플리케이션의 이름입니다. 링크를 삭제하고 다시 시도해 보세요. 또한 파일이 가리키는 내용이 표시됩니다 ls. stat .vimrc이 출력은 다음으로 시작됩니다.

File: ‘.vimrc’ -> ‘.vimrc’

이런! readlink훨씬 더 간단합니다:

> readlink .vimrc
.vimrc

링크가 가리키는 경로만 제공됩니다. 경로가 파일과 정확히 동일하면 순환 링크입니다. 당신이 보고 싶은 것:

> readlink .vimrc
data/dotfiles/.vimrc

관련 정보