当 Windows 复制/移动到达符号链接 (Symlink-ed) 文件/文件夹时会冻结

当 Windows 复制/移动到达符号链接 (Symlink-ed) 文件/文件夹时会冻结

这是我想要描述的问题的概念证明。

  • 创建一个my folder并在其中创建一个符号链接任何其他外部文件(即original.txt
  • 将 移动original.txt到其他位置,或者只是重命名。(其符号链接仍然保留在 中my folder
  • 尝试复制/移动my folder

Windows 复制窗口将永远挂起:

在此处输入图片描述

但是,如果您删除(或重命名)符号链接本身,复制将会顺利地继续下去。

这非常烦人,因为我有数千个文件(CMS 等)在不同的项目中进行符号链接,而且我正在寻找如何强制 Windows,而不是在这些情况下卡住。

答案1

我无法复制挂起。在 Windows 10 中,我得到的是错误对话框。您可能需要查找它,因为它可能位于 Explorer 下方并被隐藏。

在此处输入图片描述

避免此类问题的唯一解决方案是使用另一个可继续处理此类情况的实用程序。

批处理实用程序 机器人复制。根据我的测试,它会发出错误,但会复制所有内容(包括错误的符号链接!)。

GUI 实用程序快速复制,正如其名称所示。它只会复制好的文件,而忽略错误的符号链接。设置选项“Nonstop”不会发出任何错误对话框。

答案2

正如 E. van Putten 所说提及,Windows 资源管理器在遇到无法解析的链接时会暂停复制。好消息是,只要链接可以解析,复制操作就会自动恢复。

您可以通过找出符号链接的完整路径、在文件属性中查找其目标并重新创建目录/文件来执行此操作。

当您正在复制数百万个文件时,这是一个特别好的解决方案,重新启动并不是一个真正的选择(并且无效链接的数量是有限的;))。

查找链接目标的示例:

在资源管理器中右键单击符号链接,然后单击“属性”。您将在“目标”字段中看到链接目的地(屏幕截图中的“doel”)。

符号链接属性

相关内容