我一直在寻找一种在Windows下创建硬链接的方法,我找到了这个页面:http://technet.microsoft.com/en-us/library/cc788097.aspx
为了试用它,我在我的C:驱动器的根目录上创建了一个文件(1.txt),其中有100行以下内容:
C:\ 1.txt(2.598字节):
test test test test test
然后我打开命令提示符并输入:
fsutil hardlink create C:\2.txt C:\1.txt
成功,2.txt已创建,但当我看到它的大小时,它只有2.598字节并且还注意到一些奇怪的行为(就我对硬链接的理解而言):
fsutil hardlink create命令与copy命令有何不同?如何在Windows下创建真正的硬链接?
我使用的是Windows XP SP 3,我的文件系统是NTFS。
答案 0 :(得分:5)
这正是应该发生的行为。您确定了解链接的工作原理吗?硬链接实际上只是文件系统中引用完全相同文件的多个条目。如果您创建一个文件的硬链接并修改该文件的其中一个实例,则另一个文件将显示您的更改,因为它们都引用磁盘上的相同数据块。
当您删除其中一个硬链接时,您实际上只是删除了一个引用该文件的文件系统条目。在删除所有其硬链接(包括原始链接)之前,不会删除该文件。删除1.txt后,2.txt仍然存在,并引用原来在那里的同一文件,只是现在只有一个文件系统条目引用该文件(即2.txt)。 2.txt 是该文件。
答案 1 :(得分:1)
fsutil hardlink是如何创建的 命令与复制命令不同? 我怎样才能创建一个真正的硬链接 在Windows下?
创建硬链接文件后,尝试编辑。您将发现这些更改会反映在两个文件中。
尝试创建非常大的文件(例如视频或磁盘映像)的硬链接。请注意,磁盘上的可用空间未更改(或者如果必须将其他元数据写入磁盘以反映新的dir条目,则不会更改超过几个字节。)
答案 2 :(得分:0)
这是一个真正的硬链接。在UNIX中(我不熟悉Windows变体),文件只是磁盘上的一组数据(简单地说)。它是目录条目本身,为该文件命名。
如果有两个目录条目指向同一个基础文件,删除其中一个不删除该文件,除非它是附加到它的最后一个目录条目(并且该文件仍未打开一个过程,但这是另一回事。)