26

我正在尝试在两个目录之间创建符号链接。我有一个名为 TestDocs 和 TestDocs2 的目录。我将在 TestDocs 中完成所有工作,但我需要将它们全部反映在 TestDocs2 中。因此,TestDocs2 中的所有文件都将在 TestDocs 中复制,如果我在 TestDocs 中添加文件、更改文件等,它应该反映在 TestDocs2 中。

所以我认为这就像这样做一样简单:

mklink /D TestDocs TestDocs2

但是当我这样做时,我得到了错误:

当该文件已存在时无法创建该文件

为什么我会得到这个?

另外,我的 TestDocs 和 TestDocs2 在命令中的顺序是否错误?

感谢您的帮助,符号链接一直让我感到困惑!

4

4 回答 4

41

正确的用法是:

MKLINK [options] {link} {target}

您正在创建一个链接,因此link是您将要创建的新链接。
target链接的目标,即现有目录。

于 2012-08-20T12:45:01.427 回答
21

这对我来说是这样的。我想重新定位我C:\ProgramData\Package CacheF:分区。

我必须做的步骤:

  1. 身体移动"C:\ProgramData\Package Cache"F:. 现在,自从我搬家后,我已经"F:\ProgramData\Package Cache"离开"C:\ProgramData\Package Cache"了。

  2. 在 cmd 中运行(全部在一行中,为了便于阅读,在此处拆分)

    mklink /J "C:\ProgramData\Package Cache" 
              "F:\ProgramData\Package Cache"
    
  3. 结果:

    Junction created for C:\ProgramData\Package Cache <<===>> 
                         F:\ProgramData\Package Cache`
    
于 2013-06-01T22:16:51.430 回答
0

我是为 Google Picasa 做的,所以我可以在不止一台机器上访问照片。它运行良好,因为 Picasa 并不是真正启用网络的程序。对我来说,我做了以下事情:

  • 安装 Picasa
  • 运行应用程序。这将创建所有必要的数据库文件。
  • 关闭应用程序。
  • 导航到数据库所在的目录 - 在 Windows 7 上,它将在 c:\users\\AppData\Local\Google 中创建
  • 将有两个文件夹 Picasa2 和 Picasa2Albums 将这些文件夹复制到网络位置。在我的例子中,我创建了一个名为 o:\PicasaDatabase 的文件夹并将这些文件夹复制到其中。
  • 接下来将原始文件夹重命名为 Picasa2.old 和 Picasa2Albums.old

从提升的 cmd 提示符运行以下命令:

mklink /D "c:\Users\\AppData\Local\Google\Picasa2" "o:\PicasaDatabase\Picasa2"

mklink /D "c:\Users\\AppData\Local\Google\Picasa2Albums" "o:\PicasaDatabase\Picasa2Albums"

将在源位置创建两个符号链接,它们将指向网络驱动器。

显然,对于不可联网且只有一个用户可以一次访问数据库的应用程序,使用这样的符号链接是一种解决方法。

于 2015-03-19T09:39:50.160 回答
0

我遇到过同样的问题。您必须确保 Source 文件夹不存在。(如果确实如此,则将其重命名为其他名称)

如果 MobileSync 下不应存在以下备份文件夹。由于 Apple iTunes 会查找具有该名称的备份文件夹,只需将现有文件夹重命名为 OriginalBackup 之类的名称即可避免 iTunes 找到它。相反,mklink 将同义词备份到 D:文件夹,如下所示

mklink /JC:\Users\Dell\Apple\MobileSync\Backup D:\Apple\Backup\iPhoneXRBackup

于 2018-12-27T18:30:06.367 回答