【发布时间】:2017-08-22 18:27:33
【问题描述】:
我认为 Windows 10 中的符号链接的行为类似于 Linux 符号链接,即它们对应用程序是透明的。但是,我对实际行为感到困惑。
例如,我对同一个 CSS 文件进行了软链接和硬链接:
$ mklink softlinked.css Default.css
symbolic link created for softlinked.css <<===>> Default.css
$ mklink /H hardlinked.css Default.css
Hardlink created for hardlinked.css <<===>> Default.css
硬链接的行为可预测(与原始文件无法区分),但我不理解软链接的行为。例如看这个:
此外,当插入符号编辑器使用 CSS 时,硬链接样式表可以正常工作:
当软链接被破坏时:
问题是:
- 符号链接在 Windows 上的实际表现如何?
- 能否使软链接对应用程序透明?通过透明,我的意思是应用程序将始终将文件视为符号链接路径 (
...\symlinked.css) 并且永远不会解析为原始路径 (...\Default.css)。是否有一些 Windows 注册表设置或什么?
【问题讨论】:
-
可能应该注意到硬链接也不能可靠地工作,因为通常将保存实现为删除和重新创建(这会破坏硬链接)而不是简单的写。
-
@HarryJohnston 是的,我也是这么想的。链接在 Windows 上非常麻烦。