Windows 无法创建符号链接-文件已存在时无法创建该文件

Windows 无法创建符号链接-文件已存在时无法创建该文件,windows,cmd,command-line-interface,symlink,mklink,Windows,Cmd,Command Line Interface,Symlink,Mklink,TLDR;当运行下面的命令时,我得到“当文件已经存在时无法创建文件”错误。对于我在符号链接上读到的所有内容,我感到非常困惑,因为基本上总是不清楚哪个目录是哪个目录,以及手头的两个或一个目录是否需要已经存在。因此,我在下面发布了我的命令,我希望有人能发现错误(并用简单的术语解释):) 最近,我的C-drive(SSD)已经满了,我决定把一些东西移到我的D-drive(普通硬盘)上。我阅读了有关符号链接的内容,并尝试将目录从C:\链接到D:,但我总是遇到“当文件已经存在时无法创建文件”错误。我的命

TLDR;当运行下面的命令时,我得到“当文件已经存在时无法创建文件”错误。对于我在符号链接上读到的所有内容,我感到非常困惑,因为基本上总是不清楚哪个目录是哪个目录,以及手头的两个或一个目录是否需要已经存在。因此,我在下面发布了我的命令,我希望有人能发现错误(并用简单的术语解释):)


最近,我的C-drive(SSD)已经满了,我决定把一些东西移到我的D-drive(普通硬盘)上。我阅读了有关符号链接的内容,并尝试将目录从C:\链接到D:,但我总是遇到“当文件已经存在时无法创建文件”错误。我的命令如下:

C:\users\me\documents\main-folder\folder-I-want-linked > mklink /J "D:\folder\another folder\folder-where-I-want-to-store-the-docs" "C:\users\me\documents\main-folder\folder-I-want-linked"
虽然我是一名初级程序员,对CLI有一些了解,但我还是不知道我的错误

  • 我想也许我应该把这两个目录颠倒过来。我读到的源代码让我感到困惑:例如,谈论和,这两个目录都可以引用,具体取决于您如何看待它。对于符号链接应该如何指向,我有点困惑:根据我的常识,但我认为这种语法是正确的

  • 我想,由于错误是某些东西已经存在,我的空地图应该被删除,因为它可能会被创建?在这方面,我在superuser.com上发现非常令人困惑。我还看到,说目标目录不能存在?因为这是我想放文件的地方,我觉得这很奇怪。从另一个来源(我找不到这么快),我明白这两个目录已经需要存在

  • 我认为我运行命令的映射是不正确的。然而,在这一层之上(在“主文件夹”中)运行命令也会给我带来错误;在D-drive的位置也尝试过。但是,从前面提到的howtogeek.com来源,我得到了一个想法,我不需要在一个特定的目录中


  • 我在这个网站上也看到了很多关于符号链接的问题,但我没有找到任何对我有帮助的答案。我可能把这里的事情弄得很复杂,所以如果有人有一个简单的更正/解释,我将非常感激:)。

    多亏@Mofi,我发现了我的错误:

  • 空文件夹(
    folder-I-want-linked
    在我的C-drive上)不应存在:它将在创建链接时创建
  • 这也意味着应该从父目录(
    C:\users\me\documents\main folder
    )创建符号链接
  • 我应该使用
    /D
    而不是
    /J
  • 由于某些原因,拼写出我要创建的文件夹的绝对路径不起作用(
    C:\…\…\folder-I-want-linked
    ),但是我当前位置的相对路径(因此简单地说,
    folder-I-want-linked
    )起作用
  • 我的示例的正确语法是:

    C:\users\me\documents\main-folder> mklink /D "folder-I-want-linked" "D:\folder\another folder\folder-where-I-want-to-store-the-docs"
    

    那么,执行命令
    mklink
    的当前目录是
    C:\users\me\documents\main folder\folder-I-want-linked
    。因此,目录
    folder-I-want-linked
    已经存在于目录
    %UserProfile%\documents\main folder
    中。因此,无法在
    %UserProfile%\documents\main folder
    中创建名为
    folder-I-want-linked
    的连接。您必须将当前目录更改为
    %UserProfile%\documents\main folder
    ,然后将整个目录
    folder-I-want-linked
    移动到
    D:\folder\other folder
    ,然后您可以在
    主文件夹中创建连接。谢谢您的评论。我已经尝试删除原始文件夹(并再次尝试),但不幸的是,没有成功…您是否以管理员身份打开了命令提示符窗口?我建议阅读比Microsoft文档更好的网站。换句话说,在以管理员身份打开的命令提示窗口中使用“C:\users\me\documents\main folder”
    ,通过运行
    dir/a确保没有名为
    folder-I-want-linked
    的文件或文件夹“folder-I-want-linked”
    应输出错误消息,因为找不到具有该名称的文件/文件夹,并最后运行
    mklink/J“folder-I-want-linked”D:\folder\other folder\folder-where-I-want-to-store-the-docs“
    创建连接。@Mofi我曾尝试作为管理员,但不幸的是,这也不起作用-我还从多个来源了解到,那时我会收到另一条错误消息(但感谢您澄清我需要将/D添加到命令中,因为我确实很难做到这一点;))。尽管我现在想知道:我是否也应该从命令本身删除
    文件夹-I-want-linked