53 我正在使用网络模拟器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 如何删除已经创建的符号链接或可以用任何其他命令替换它? command-line package-management software-installation — 维奈 source 我正在尝试做sudo ln -s destination source,当然会出错。感谢您的回答。 — aviggiano
35 sudo rm -r /usr/bin/ns sudo ln -s /home/vinaychalluru/ns-allinone-2.34/ns-2.34/ns /usr/bin/ns — Pawełkowy source 1 如果ns是文件夹,则上述操作将失败-在这种情况下,请使用rm -rf(递归强制开关)-在这种情况下,您最好对ln使用-sf开关。 — finley 2010年 @finley是的,你是对的。如果ns是文件夹,则无法删除。现在对我来说,我们可以创建指向文件夹的符号链接了吗? — Vinay,2010年 1 是的,我们可以创建指向文件夹的符号链接。如果它是一个文件夹,你可以这样做:sudo的RM -r在/ usr / bin中/ NS — Pawełkowy @Pawel我成功创建了一个指向文件夹的符号链接。我什至可以删除您上面所说的内容。但是,当我在终端中键入fold [为文件夹创建符号链接]名称时,会出现错误。我实际上以为是通过创建到文件夹的符号链接,然后只键入链接名称终端,即可在nautilus中打开它。我不确定是否可以..? — Vinay 1 @Vinaychalluru如果您想打开该文件夹,请尝试键入:cd fold-它会在终端中打开。如果你想在鹦鹉螺,类型打开它:Nautilus折叠 — Pawełkowy
62 ln具有-f“强制”创建符号链接的开关,无论它是否存在。 sudo ln -sf /home/vinaychalluru/ns-allinone-2.34/ns-2.34/ns /usr/bin/ns — 芬利 source 这应该是公认的答案。 — 罗尼·瓦吉斯
28 我试图ln -sf同时更换,但它并没有为我工作,但这样做ln -sfn directory link_name 的root工作。 — 用户名 source 没有-n我,我就遇到了无限循环的问题。谢谢! — Christopher Markieta,2015年
3 要添加到上述所有答案中,在许多情况下,符号链接可以被视为常规文件(链接,而不是目标文件)。 rm在符号链接上将其删除。如果链接是由root拥有的,则需要sudo。 您应该rm /usr/bin/ns或者应该sudo rm /usr/bin/ns不会忘记所有权。 — 德米特里·里赫滕 source
sudo ln -s destination source
,当然会出错。感谢您的回答。