Я работаю над своим проектом, используя сетевой симулятор2. Я установил его, и все в порядке. Я попытался создать символическую связь между этой установкой и /usr/bin
, чтобы я мог вызвать программное обеспечение, запустив его ns
из командной строки. А именно, я побежал:
sudo ln -s /home/vinaychalluru/ns-allinone-2.34/ns-2.34/ns /usr/bin/ns
который генерировал следующий вывод:
ln: creating symbolic link '/usr/bin/ns': File exists
Как удалить уже созданную символическую ссылку или заменить ее другими командами?
sudo ln -s destination source
, и, конечно, это прослушивается. Спасибо за ответ.Ответы:
источник
ln
Имеет-f
переключатель, который «заставляет» создать символическую ссылку независимо от того, существует она или нет.источник
Я пробовал
ln -sf
во время замены, но у меня это не сработало, но работалоln -sfn directory link_name
как надоroot
.источник
-n
меня была проблема с бесконечным циклом. Спасибо!Чтобы добавить ко всем ответам выше, символическая ссылка во многих случаях может рассматриваться как обычный файл (ссылка, а не цель).
rm
по символической ссылке удалит его. Если ссылка принадлежит пользователю root, вам потребуется sudo.Вы должны быть в состоянии
rm /usr/bin/ns
или, скорееsudo rm /usr/bin/ns
, не забывать владение.источник