Pracuję nad moim projektem przy użyciu symulatora sieci2. Zainstalowałem i wszystko jest w porządku. Próbowałem utworzyć symboliczne łącze między tą instalacją /usr/bin
, aby móc wywołać oprogramowanie, uruchamiając się ns
z wiersza polecenia. Mianowicie, prowadziłem:
sudo ln -s /home/vinaychalluru/ns-allinone-2.34/ns-2.34/ns /usr/bin/ns
który wygenerował następujące dane wyjściowe:
ln: creating symbolic link '/usr/bin/ns': File exists
Jak mogę usunąć już utworzone dowiązanie symboliczne lub czy mogę je zastąpić innymi poleceniami?
sudo ln -s destination source
i oczywiście to popsuło. Dziękuję za odpowiedź.Odpowiedzi:
źródło
ln
ma-f
przełącznik, który „wymusza” utworzenie dowiązania symbolicznego, niezależnie od tego, czy istnieje.źródło
Próbowałem
ln -sf
podczas wymiany, ale to nie działało dla mnie, ale działałoln -sfn directory link_name
tak, jakroot
działało.źródło
-n
miałem problem z nieskończoną pętlą. Dzięki!Aby dodać do wszystkich powyższych odpowiedzi, łącze symboliczne może być w wielu przypadkach traktowane jak zwykły plik (link, a nie cel).
rm
na dowiązaniu symbolicznym usunie go. Jeśli link należy do roota, będziesz musiał sudo.Powinieneś być w stanie
rm /usr/bin/ns
lub raczejsudo rm /usr/bin/ns
nie zapomnieć o własności.źródło