2013-05-29 3 views
9

Я попытался создать символическую ссылку на несуществующий файлСимволическая ссылка на несуществующий файл

ln -s non_existing_file.txt $HOME/dir1/dir2/my_symbolic_link 

я пытался написать что-то в не существующий файл, используя символические ссылки

vi $HOME/dir1/dir2/my_symbolic_link 

теперь после сохранения и выхода.

non_existing_file.txt создается под dir2

Может кто-нибудь объяснить, почему?

ответ

4
ln -s target linkpath 

создает символическую ссылку на linkpath который содержит имя target. Операции на symlink интерпретируют имя target относительно каталога, в котором находится символическая ссылка, а не настоящего рабочего каталога.

Так что, если у вас есть символьная ссылка проведение, скажем, ../usr в /tmp/link-to-usr, то ls /tmp/link-to-usr перечислит содержание /usr (который /tmp/../usr) независимо от того, где выполняются команда ls.

Смежные вопросы