it-swarm.com.de

Wie lösche oder ersetze ich einen bereits erstellten symbolischen Link?

Ich arbeite an meinem Projekt mit Network Simulator2. Ich habe es installiert und alles ist in Ordnung. Ich habe versucht, eine symbolische Verknüpfung zwischen dieser Installation und /usr/bin herzustellen, damit ich die Software aufrufen kann, indem ich ns über die Befehlszeile ausführe. Ich lief nämlich:

Sudo ln -s /home/vinaychalluru/ns-allinone-2.34/ns-2.34/ns /usr/bin/ns

welches die folgende Ausgabe erzeugte:

ln: creating symbolic link '/usr/bin/ns': File exists


Wie kann ich den bereits erstellten Symlink löschen oder durch andere Befehle ersetzen?

52
Vinay
Sudo rm -r /usr/bin/ns

Sudo ln -s /home/vinaychalluru/ns-allinone-2.34/ns-2.34/ns /usr/bin/ns
35
Pawełkowy

ln hat den Schalter -f, der die Erstellung eines Symlinks erzwingt, unabhängig davon, ob dieser existiert oder nicht.

Sudo ln -sf /home/vinaychalluru/ns-allinone-2.34/ns-2.34/ns /usr/bin/ns
62
finley

Ich habe ln -sf beim Ersetzen versucht, aber es hat bei mir nicht funktioniert, aber ich habe ln -sfn directory link_name wie root funktioniert.

28
user712092

In vielen Fällen kann ein symbolischer Link als reguläre Datei behandelt werden (der Link, nicht das Ziel).

rm auf einem symbolischen Link wird es entfernen. Wenn der Link im Besitz von root ist, müssen Sie Sudo.

Sie sollten in der Lage sein, rm /usr/bin/ns oder vielmehr Sudo rm /usr/bin/ns den Besitz nicht zu vergessen.

3
Dmitriy Likhten