博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何在NTFS文件系统中创建文件的Link
阅读量:4190 次
发布时间:2019-05-26

本文共 1922 字,大约阅读时间需要 6 分钟。

大部分朋友可能知道UNIX提供了创建文件的Link的功能,而用过WindowsNTFS文件系统所支持的Link功能的朋友可能就没有那么多了(注意我说的不是Shortcut)。今天正好由于工作原因研究了一下相关内容,整理一下分享出来。本文简单介绍如何在Windows系统中使用NTFS文件系统所提供的功能创建LinkNTFS支持两种LinkJunction PointHard Link

Junction Point

Junction PointNTFS文件系统中Reparse Point的一种类型,支持对Folder的链接。

创建junction point可以使用Sysinternals所提供的Junction.exe工具来创建,其命令格式为:

 

junction >

 

 

Sysinternals工具可以在 下载)

比如我们可以创建一个对于C:/tempLink,名为C:/Link_Temp

C:/>junction C:/Link_Temp C:/temp

 

Junction v1.03 - Win2K junction creator and reparse point viewer

Copyright (C) 2000-2002 Mark Russinovich

Systems Internals - http://www.sysinternals.com

 

Created: C:/Link_Temp

Targetted at: C:/temp

 

那么,就可以像普通Folder一样的对Link_Temp进行操作了:

C:/>dir C:/link_Temp

 Volume in drive C is Vista

 Volume Serial Number is 0C8F-86E1

 

 Directory of C:/link_Temp

 

07/15/2007  11:48 AM   

          .

07/15/2007  11:48 AM   

          ..

显然Shortcut是做不到这一点的。

如果我们不需要这个Link了,可以随时键入rmdir C:/link_temp来删除这个Link,即使C:/Temp不为空。

关于Conjunction Point的详细内容可以参看:

Windows 2000 Resource Kit中也提供了一个类似工具用于创建Conjunction Point,可以参考下面这篇文章:

Windows Vista上提供了更强大的Symbolic Link功能,对文件也可以使用,具体可以参看:

 

Hard Link

 

Hard LinkConjunction Point不同的地方在于,Hard Link类似对实际文件内容的一个Reference,有几个不同的文件名对其引用那么就存在几个Reference。当所有的Reference都被删除的时候,文件内容则被删除。可以把通常情况下的文件名认为是Hard Link的一种特殊形式,即只有一个File Name引用实际的文件内容。任何对所有引用的文件名的操作都会改变文件内容。

创建Hard Link可以通过fsutil(在XP/2003/Vista上存在)来创建,格式如下:

 

fsutil hardlink create >

 

 

C:/>fsutil hardlink create test_1.txt test.txt

Hardlink created for C:/test_1.txt <<===>> C:/test.txt

 

C:/>fsutil hardlink create test_2.txt test.txt

Hardlink created for C:/test_2.txt <<===>> C:/test.txt

 

C:/>fsutil hardlink create test_1.txt test.txt

Hardlink created for C:/test_1.txt <<===>> C:/test.txt

 

C:/>fsutil hardlink create test_2.txt test.txt

Hardlink created for C:/test_2.txt <<===>> C:/test.txt

 

大家可以自己试验一下,看删掉原来文件test.txt之后,test_1.txttest_2.txt是否还存在,内容是否还存在。答案是肯定的。

关于Hard Link的具体内容可以参看:

 

 

 

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1741265

你可能感兴趣的文章
八种消除沟通上的不良习惯地的方法
查看>>
《Web性能测试实战》性能测试用例模板
查看>>
《Web性能测试实战》性能测试报告模板
查看>>
《Web性能测试实战》性能测试计划模板
查看>>
《LoadRunner性能测试实战》第五章开头部分
查看>>
测试人员的开发水平要达到什么层次?
查看>>
项目中的软件质量管理
查看>>
功能测试用例设计
查看>>
测试术语和常见问题
查看>>
微软专家与您一起谈谈测试人员职业规划&&技术专家与您一起交流LoadRunner使用经验。
查看>>
百度人为操纵搜索结果遭曝光 品牌总监离职
查看>>
解析测试工程师职业瓶颈
查看>>
优秀测试工程师应该具有的基本素质
查看>>
《Web性能测试实战》签名赠书活动&加盟光芒国际传媒的好机会
查看>>
中国的IT企业和客户,哪个更贱?
查看>>
测试-答对5道题的人是天才,答对4道的是帅才,答对3道的是将才,答对2道的是奇才,答对1道的是人才
查看>>
《软件测试管理》第14章软件测试常见问题——(四)测试技术常见问题
查看>>
《Web全面性能测试实战》第2章Web全面性能测试模型
查看>>
《软件测试管理》 第15章 测试工程师前途-(工资待遇、发展方向探讨)
查看>>
《软件测试管理》第14章 软件测试常见问题——(三)测试流程常见问题
查看>>