Когда у меня есть символическая ссылка для папки, а затем повторите попытку с помощью опции -sf, я получаю еще одну символическую ссылку в исходной исходной папке, символизирующую ее. Почему это происходит и как я могу убедиться, что дублирующие символические ссылки не созданы?
➜ foo pwd
/home/ubuntu/foo
➜ foo ln -sf ~/foo/bar ~/foo/baz
➜ foo tree
.
├── bar
│ └── test.sh
└── baz -> /home/ubuntu/foo/bar
2 directories, 1 file
➜ foo ln -sf ~/foo/bar ~/foo/baz
➜ foo tree
.
├── bar
│ ├── bar -> /home/ubuntu/foo/bar
│ └── test.sh
└── baz -> /home/ubuntu/foo/bar
3 directories, 1 file
Distro: Ubuntu 14.04.5 LTS (GNU / Linux 3.13.0-106-generic x86_64 shell: zsh with Oh мой zsh-плагин
Я сделал еще несколько поисковых запросов, и он указывает мне на использование параметра -n, как в этом сообщении в блоге.
Соответствующая запись в manpage:
-n, --no-dereference
treat LINK_NAME as a normal file if it is a symbolic link to a directory
Соответствующие ответы от других сообщества с лучшими объяснениями:
это сообщение в блоге https://superuser.com/a/645847/373342
Фактический ответ, который вам нужен, не используйте -f, если вы не хотите перезаписывать что-то уже существующее.
Без этого параметра вы действительно получите сообщение, сообщающее вам:
ln: failed to create symbolic link 'your/link': File exists
-n - я ни в коем случае не мог подумать о необходимости, если вы не хотите создать ссылку с тем же именем внутри ссылки, указанной в каталоге. [ ! d3]
Я сделал еще несколько поисковых запросов, и он указывает мне на использование параметра -n, как в этом сообщении в блоге.
Соответствующая запись в manpage:
-n, --no-dereference
treat LINK_NAME as a normal file if it is a symbolic link to a directory
Соответствующие ответы от других сообщества с лучшими объяснениями:
это сообщение в блоге https://superuser.com/a/645847/373342
Фактический ответ, который вам нужен, не используйте -f, если вы не хотите перезаписывать что-то уже существующее.
Без этого параметра вы действительно получите сообщение, сообщающее вам:
ln: failed to create symbolic link 'your/link': File exists
-n - я ни в коем случае не мог подумать о необходимости, если вы не хотите создать ссылку с тем же именем внутри ссылки, указанной в каталоге. [ ! d3]