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

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

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

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

在我的文件夹中创建一个名为sagamy Documentsdirectory 的符号链接home。终端输出为:

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

~/Documents我用 ls -a检查了 的内容,除了.和什么都没有..。总的来说,我的home文件夹是空的,这只是一个全新的系统安装。

答案1

这是一个典型的错误……事实恰恰相反:

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(原样,没有扩展)。

答案2


重定向时 我收到相同的错误消息

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

这与我预期的一样。

答案3

正如@Rmano 在他的回答参数顺序错误。我也经常犯同样的错误。因此,我找到了一个

创建符号链接的万无一失的方法

首先进入要创建链接的目录

cd ~/Documents/saga

然后使用单一参数

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

这将创建一个与目标同名的当前目录的链接。

答案4

可能不相关。
对我来说,链接已失效。指向不存在的文件夹。尝试替换它时,它会失败并显示此消息。^ 所以简单rm linkName就足够了。

相关内容