Я работаю над своим проектом, используя сетевой симулятор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
Как удалить уже созданную символическую ссылку или я могу заменить ее другими командами?
ln
имеет переключатель -f
, который «заставляет» символическую ссылку быть созданной, существует она или нет.
sudo ln -sf /home/vinaychalluru/ns-allinone-2.34/ns-2.34/ns /usr/bin/ns
Я пытался ln -sf
при замене, но у меня это не сработало, но делал ln -sfn directory link_name
как root
.
sudo rm -r /usr/bin/ns
sudo ln -s /home/vinaychalluru/ns-allinone-2.34/ns-2.34/ns /usr/bin/ns
Чтобы добавить ко всем ответам выше, символическая ссылка во многих случаях может рассматриваться как обычный файл (ссылка, а не цель).
rm
по символической ссылке удалит его. Если ссылка принадлежит пользователю root, вам потребуется sudo.
Вы должны быть в состоянии rm /usr/bin/ns
или, скорее, sudo rm /usr/bin/ns
не забывать владение.