> cd /tmp
> ln -s foo
> ls -alhF /tmp
lrwxrwxrwx 1 user user 3 Jul 29 14:00 foo -> foo
이것은 버그입니까 ln
, 아니면 파일 자체를 심볼릭 링크하는 사용 사례가 있습니까?
이것은 coreutils 8.21-1ubuntu5.1
.
답변1
이것은 실수가 아닙니다. 이 사용 사례는 파일을 동일한 기본 이름이지만 다른 디렉터리에 연결하려는 경우에 사용됩니다.
cd /tmp
ln -s /etc/passwd
ls -l passwd
lrwxrwxrwx 1 xxx xxx 11 Jul 29 09:10 passwd -> /etc/passwd
실제로, 동일한 디렉토리에 있는 파일 이름으로 이 작업을 수행하면 자체에 대한 링크가 생성되지만 이는 별로 도움이 되지 않습니다!
이는 심볼릭 링크를 사용하든 하드 링크를 사용하든 상관없이 작동합니다.
답변2
물론, 가장 쉬운 방법은 직접 사용해 보는 것입니다. 두 번째 인수가 제공되지 않으면 ln
원래 디렉터리와 동일한 이름을 가진 링크가 현재 디렉터리에 생성됩니다.
$ ln -s /etc
$ ls -l
lrwxrwxrwx 1 terdon terdon 4 Jul 29 16:09 etc -> /etc
이에 대한 설명은 다음과 같습니다 man ln
.
두 번째 형식에서는 TARGET에 대한 링크가 현재 디렉터리에 생성됩니다.
"두 번째 형태"는 다음을 의미합니다.
ln [옵션]...target (두 번째 형식)