Должна ли цель в ln -s быть полным путем?
Я пытался вызвать ln
в каталоге ~/download
как это:
ln -s ./abc ~/abc [EDITED]
но это не работает
я делаю ls -al
в моем доме и получить неправильную ссылку abc
,
ln [OPTION]... [-T] TARGET LINK_NAME (1st form)
Итак, мой вопрос здесь: ln
нужен полный путь к цели? Я не нашел ни одного документа или подсказки в man
стр. Если так, где я могу получить дополнительную информацию.
2 ответа
Все довольно просто: вы создаете символическую ссылку в ~
это указывает на ./abc
в этом каталоге. Путь к символической ссылке должен быть действительным в контексте каталога, в котором он находится. Если вы действительно хотите указать на файл, который находится в вашем текущем текущем каталоге, вы должны использовать полный путь.
- Ссылка должна быть действительной, если вы хотите ее использовать. Это может указывать на ничто или на файл, который не существует. Это может быть хорошо, так как файл, возможно, был там раньше и может появиться в любое время, и символическая ссылка будет снова указывать на него.
ln
может принимать как абсолютные, так и относительные имена путей; Разница имеет значение для символических ссылок, но, поскольку вы попросили сделать жесткую ссылку, она будет преобразована в тот же файл в любом случае.
Проверить ls -li
вывод на ~/abc
а также ~/download/abc
- вы увидите, что количество ссылок 2
и номер индекса одинаков для обоих файлов.