什么是硬链接?它与文件有何不同?
如果我有一个硬链接,所有应用程序都会认为该链接是一个文件吗?(我的程序无法打开文件,因为它们是快捷方式)如果我修改硬链接,它会修改原始文件还是创建副本并进行修改?
答案1
当您在 NTFS 文件系统上保存文件时,它会在驱动器上的某个位置创建该文件,然后在主文件表 (MFT) 中创建对它的引用。当程序请求文件时,Windows 会在 MFT 中查找文件名,如果找到,则返回文件名指向的信息。
硬链接会获取现有文件(或文件夹)并在 MFT 中创建指向相同数据的另一个不同条目。对于程序来说,这两个文件看起来像是具有相同信息的不同文件,但它们实际上是同一个文件。如果您修改其中一个文件,另一个文件也会更改,因为它们实际上是两个不同名称的同一个文件。
这与快捷方式不同,因为快捷方式实际上是一个包含有关目标信息的文件本身。
答案2
来自开发者的消息:
对于不熟悉硬链接的 Windows 用户来说,它们与文件和文件夹快捷方式没有什么不同。除了一个关键的区别之外,它们由操作系统的文件分区排序和注册,就像真正的文件和目录一样。这意味着与快捷方式不同,任何程序或应用程序(包括 Windows 资源管理器和命令提示符)在查找硬链接时都会将其视为符号链接指向的原始文件或文件夹。
http://ipggi.wordpress.com/2009/09/07/windows-file-junctions-symbolic-links-and-hard-links/
查看 How To Geek 的这篇文章:
http://www.howtogeek.com/howto/windows-vista/using-symlinks-in-windows-vista/
来自MSDN: