• 1.摘要
  • 2.基本信息
  • 3.基本内容
  • 3.1.Windows XP
  • 3.2.Vista、Windows 7
  • 3.3.Link Shell Extension
  • 3.4.命令行工具Ln
  • 3.5.查找重复文件的命令行工具Dupemerge
  • 3.6.共用文件,无需复制
  • 3.7.放到一块,方便管理
  • 3.8.同步软件,请靠边站

硬连接

硬连接是对于同一文件系统的一个文件的连接,节点是文件存在的唯一标识,在文件系统中是唯一的,但在不同的文件系统则有可能重复。这样的话,在不同文件系统中作链接时,是不能使用ln A B,应该用符号连接,即是软连接,它只是包含了系统中一个完整的路径名引用。硬连接就是记录了文件的地址,你在文件管理器中看到的每个文件都是磁盘里文件的“硬连接”。当一个文件的所有硬连接都被删除的时候,该文件占用的空间才可以被新加入的数据覆盖。

基本信息

  • 中文名

    硬连接

  • 外文名

    Hard-wired

  • 拼音

    yìnglián jiē

  • 注音

    ㄧㄥˋㄌㄧㄢˊ ㄐㄧㄝ

基本内容

在Windows下创建硬连接

在LINUX、UNIX下面创建硬连接已经“司空见惯”了(上面提到的是Linux里面的命令),这里说的是怎么在Windows下面创建硬连接。

Windows XP

XP 也有硬连接?没错!不过,先声明,这个仅仅是NTFS才有的。另外要注意的是,硬连接不能跨卷的,简单的说就是不能在C盘给D盘的文件创建硬连接

XP下面也有硬连接,只是知道的人不多(个人觉得是因为没有UI,所以知道的人少,但在win7里面被认为是“新功能”,那是因为WinSxS文件夹中的文件应用了硬连接技术,而让“硬连接”这一名词在Win7中名声大噪。搜索“Win7 硬连接”,大半的结果是说这件事的),所以应用也不广泛。

创建方法

fsutil hardlink create <新文件名> <现有文件名>

比如:

fsutil hardlink create C:\硬连接.txt C:\原文件.txt

这样C:\原文件.txt就多了一个“别名”:硬连接.txt。

另外,fsutil还有其它很有用的功能,比如,改短名,详细自己输入fsutil慢慢看。

上面说的是为文件创建硬连接,能不能给文件夹创建硬连接呢?可以用一个工具——junction.exe,可以用来创建文件夹硬连接,这个可以跨分区——你是否产生了“把D:\TEST 指向 C:\ ,然后再用 fsutil hardlink create D:\test.ini D:\TEST\boot.ini 这个命令来创建跨分区文件硬连接”的想法呢?我试了,失败,输出结果如下(因为我的junction刚下载,是一个压缩包,就用WinMount虚拟成一个盘了。粗体字是系统输出的,其中包含网址的那行删掉了):

Z:\>junction.exe d:\test c:\

Junction v1.05 - Windows junction creator and reparse point viewer  Created: d:\test  Targetted at: c:\

Z:\>fsutil hardlink create d:\test.exe d:\test\boot.ini

新链接和现有文件必须在同一个卷上。

junction命令还可以把空文件夹删除掉

D:\>md TestJunctionDir