一文讲清 Windows 的 fsutil hardlink 命令用法

当然可以!下面我会用最通俗易懂的方式,向初学者讲清楚:

Windows 的 fsutil hardlink 命令是什么?怎么用?有什么用?

全程零基础也能懂,配有比喻、例子和注意事项 ✅


🌟 一、先打个比方:硬链接(Hard Link)就像"同一个文件的多个名字"

想象你有一份 Word 文档:

  • 文件名:报告.docx
  • 内容:写了 10000 字,占 5MB 空间

现在你做了个"快捷方式",叫 年终报告.docx,双击它也能打开内容。

但注意:

类型 是否占用额外空间 能否独立删除
快捷方式(Shortcut) 不占空间 可以删快捷方式,原文件还在
硬链接(Hard Link) 不占额外空间 两个名字指向同一个文件

🔥 删除一个名字,文件还在,直到最后一个名字被删

👉 这就是 fsutil hardlink 的作用:给一个文件创建"另一个名字",不复制内容,不占空间


  • fsutil = Windows 内置的"文件系统工具"
  • hardlink = 其中一个功能,用于创建硬链接

✅ 它可以帮助你:

  • 节省磁盘空间
  • 实现"多路径访问同一文件"
  • 避免重复存储相同内容

🛠️ 三、基本语法

cmd 复制代码
fsutil hardlink create <新文件名> <原始文件>
  • <新文件名>:你想创建的"另一个名字"
  • <原始文件>:已存在的文件

🎯 四、动手示例(手把手)

第一步:准备一个文件

  1. C:\test 目录下创建一个文件:
    • 文件名:original.txt
    • 内容:Hello, hardlink!

如果没有目录,先创建:

cmd 复制代码
mkdir C:\test
echo Hello, hardlink! > C:\test\original.txt

第二步:创建硬链接

cmd 复制代码
fsutil hardlink create C:\test\link1.txt C:\test\original.txt

✅ 成功后你会看到:

erlang 复制代码
Hardlink created successfully.

第三步:验证

  1. 打开资源管理器,进入 C:\test
  2. 你会看到两个文件:
    • original.txt
    • link1.txt
  3. 查看大小:都是 16 字节(不额外占用空间!)
  4. 修改 link1.txtoriginal.txt 内容也会变(因为是同一个文件!)

第四步:再创建一个硬链接

cmd 复制代码
fsutil hardlink create C:\test\link2.txt C:\test\original.txt

现在你有 3 个名字 指向同一个文件!


🔍 五、查看一个文件有多少个"名字"(硬链接数)

cmd 复制代码
fsutil hardlink list C:\test\original.txt

输出:

bash 复制代码
C:\test\original.txt
C:\test\link1.txt
C:\test\link2.txt

👉 显示所有指向这个文件的路径。


⚠️ 六、重要限制(必须知道)

限制 说明
✅ 必须在同一磁盘分区 C:\D:\ 之间不能创建硬链接
✅ 只支持 NTFS 文件系统 FAT32/exFAT 不支持
✅ 不能跨网络 不能对网络文件创建硬链接
✅ 只能对文件,不能对文件夹 想链接文件夹用 mklink /J(目录联接)
✅ 删除一个名字,文件不会丢 只有最后一个名字被删,文件才真正删除

🔄 七、硬链接 vs 符号链接(Symbolic Link)

类型 命令 能否跨盘 能否链接文件夹 原文件删了会怎样
硬链接 fsutil hardlink create ❌ 同盘 ❌ 不能 其他链接仍有效 ✅
符号链接 mklink link.txt file.txt ✅ 可跨盘 mklink /D 变"坏链接" ❌

💡 简单记:

  • 硬链接 = 同一个文件的多个名字(最安全)
  • 符号链接 = 快捷方式(更灵活)

🎓 八、实际用途(给初学者的建议)

场景 用法
✅ 节省空间 多个项目共用大文件(如数据集)
✅ 备份配置 config.json 在多个项目中共享
✅ 开发调试 多个环境访问同一个日志文件
✅ 避免复制粘贴错误 改一处,处处生效

🚀 九、完整命令示例总结

cmd 复制代码
# 1. 创建硬链接
fsutil hardlink create C:\dst\file.txt C:\src\file.txt

# 2. 查看所有链接
fsutil hardlink list C:\src\file.txt

# 3. 删除一个链接(只是删名字)
del C:\dst\file.txt
# 文件仍在,直到最后一个链接被删

✅ 十、总结:一句话记住

fsutil hardlink create 新名字 原文件 = 给文件起个"别名",不占空间,内容同步

它帮你:

  • ✅ 节省磁盘空间
  • ✅ 管理重复文件
  • ✅ 实现"一处修改,处处生效"

💡 给初学者的建议

  1. ✅ 在 C:\test 练习几次
  2. ✅ 用 dirfsutil hardlink list 验证
  3. ✅ 不要对系统文件操作
  4. ✅ 记住:只能同盘、不能文件夹
相关推荐
关关长语14 小时前
Windows 安装配置解压版Mysql8.4.5
运维·windows·mysql
昏睡红猹1 天前
使用VHF框架实现一个虚拟HID键盘
windows·windows driver
zjj5871 天前
服务器音频查找
服务器·windows·音视频
大余里1 天前
windows下查看别的服务器的端口是否通
linux·运维·服务器·windows
勤劳打代码1 天前
USB 驱动检测实现
windows·flutter
人工智能训练师1 天前
部署在windows的docker中的dify知识库存储位置
linux·运维·人工智能·windows·docker·容器
Bruce_Liuxiaowei1 天前
网络端口与服务对应表 - 白帽子安全参考指南
网络·windows·安全·web安全·ctf
技术支持者python,php2 天前
C#-mqtt通讯,服务端和客户端,以及esp32-mqtt
服务器·windows·c#
李白同学2 天前
C++:list容器--模拟实现(下篇)
开发语言·数据结构·c++·windows·算法·list