什么是“无法创建符号链接:文件存在”错误?


60

我正在尝试在主目录中创建一个指向数据分区上目录和文件的符号链接。我试过了:

~/Documents$ ln -sv ~/Documents/saga /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc

saga在我的Documents目录的目录中创建一个符号链接home。终端输出为:

ln: failed to create symbolic link ‘/media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc’: File exists

我正在~/Documents使用ls -a 检查的内容,但只有.and ..。通常我的home文件夹是空的,它只是一个全新的系统安装。


谢谢。看来我的问题不是很有用。我应该删除它吗?或者您将您的评论转换为答复,以便我接受解决:)
maria

3
你的问题的得分为四个人,因此显然是社会的决定,这有益的。另外,即使您尝试了该问题,也无法删除该问题,因为该问题的答案得分为1或更高。
2014年

我从这里(在这个论坛上)得到了这个问题的答案:askubuntu.com/questions/379647/…–
wayneeusa

Answers:


46

这是一个经典的错误……反之亦然:

ln -s Existing-file New-name 

所以你的情况

ln -sv /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc ~/Documents/saga 

应该管用。不过请注意:

  1. 如果~/Documents/saga存在并且不是目录,那么您也会遇到错误;

  2. 如果~/Documents/saga存在并且是目录,则符号链接将为~/Documents/saga/saga..doc(您确定双点吗?)

  3. 如果~/Documents/saga不存在,则您的符号链接将是~/Documents/saga(实际上,没有扩展名)。


12
永远记住,参数顺序与cp
Hagen von Eitzen 2014年

...如超级用户此处所述
G-Man

2
我对此的助记符是“什么地方”,例如,链接什么地方,将什么地方移动...
MicrosoftFree

1
甚至有cp -s
2014年

18


重定向时 出现相同的错误消息

ln -s /usr/bin/nodejs /usr/bin/node

从node.js v0.10.25
到node.js v4.2.3,
所以我研究man ln 并使用

[OPTION] 
-f, --force
          remove existing destination files

这是我所期望的。


1
我实际上没有得到您的答案/观点,您使用的整个脚本是什么?我认为我们有同样的问题
TheArc

1
我认为他建议在您的ln命令中添加--force ln -sv〜/ Documents / saga /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc --force
DropHit '16

这样就可以了ln -sf……
Pathros

16

当@Rmano 回答时,论据顺序错误。我也经常犯同样的错误。因此我发现了

创建符号链接的简单方法

首先进入您要在其中创建链接的目录

cd ~/Documents/saga

然后使用单个参数创建链接。

ln -s /very/long/path/to/target/Downloads/saga..doc

这将创建一个指向当前目录的链接,该链接的名称与目标名称相同。


0

可能无关。
对我来说,链接已经死了。指向不存在的文件夹。尝试替换它时,此消息将失败。^因此,简单rm linkName就足够了。


0

仅添加新信息,您可以删除当前的符号链接,然后重新创建符号链接。

rm  ~/Documents/saga

然后重新创建符号链接:

ln -sv /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc ~/Documents/saga

希望这可以帮助仍然面临“文件存在”错误的任何人。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.