论文部分内容阅读
为了优化教学效果,教师经常会在课堂上使用多媒体课件进行演示,这些课件(含素材文件)有大有小。笔者历年来一直将用过的课件资料完整地保存着,这是汗水的结晶,是个人教学成长的见证,能为今后的教学积累下宝贵的财富。然而随着时间的流逝,一个现实问题不容回避——硬盘开始不堪重负。究其原因不是硬盘容量太小,而是硬盘上的重复文件太多。因为笔者每次备新课都会将各种素材复制到新的教案文件夹中,几年下来,绝大多数素材文件都存在不同数量的重复。
当务之急是给硬盘减肥,把那些重复的文件副本删除。最初笔者找来了包括NoClone、Easy Duplicate Finder等几款重复文件查找软件,但试用下来都不理想。一是搜索速度太慢;二是找到的文件副本需要一一确认才能删除,费时费力;三是文件副本一旦删除,该份教案就会丧失完整性,今后再用时想找回这些素材又得费一番周折。
我们不得不想一些更好的办法,比如用快捷方式来替换文件副本,这样做既解决了文件冗余的问题,又保证了教案的完整性,可谓一举两得。但遗憾的是,搜遍了互联网也找不到具备这一功能的软件。无奈之下,笔者准备自己动手来开发这一程序。就在搜集相关的编程技术资料时,笔者无意中找到了比“快捷方式”更好的解决方案——“硬连接”技术。这一技术的好处在于:即使源文件被改名或移动,其“快捷方式”(硬连接)也不会失效。下面我们就来了解一下神奇的“硬连接”技术。
一、什么是“硬连接”
一直以来,大多数Windows用户只知有快捷方式,却不知“硬连接”为何物,主要是因为微软一直没有对该技术做太多的介绍,只在英文版的MSDN中轻描淡写了一句,从而被大多数Windows用户所忽略。其实,“硬连接”是NTFS文件系统的特有属性,也就是说所有支持NTFS的操作系统都支持这一技术,当然也包括Windows(Windows 2000以上版本)。
下面以Windows XP系统为例,通过一个小实验来说明“硬连接”的特性。
首先,在D盘(NTFS分区)根目录上建立一个名为“1.txt”的文本文件,然后在Cmd命令行键入:fsutil hardlink create d:2.txt d:1.txt。该命令将建立现有文件和新文件之间的NTFS硬连接,此时我们就在D盘根目录上创建了一个名为“2.txt”文件,它就是“1.txt”的硬连接。fsutil命令的语法是:fsutil hardlink create NewFilename ExistingFilename,其中NewFilename参数为新文件名,Existing Filename参数为源文件名。其次,将“2.txt”文件移动到D盘下的任意一个子目录,更改“1.txt”文件的内容并存盘,这时再打开“2.txt”,发现“2.txt”内容自动更改了。反之,如果我们修改的是“2.txt”,那么“1.txt”中的内容也会自动更改。
上述实验证明:在同一个盘符下,“硬连接”不会因为文件的改名或移动,而彼此断开链接,“硬连接”各副本之间时刻保持同步并自动更新。我们可以把“硬连接”形式的文件副本理解成硬盘上指向同一个文件地址的指针,所以无论你修改哪一个,其内容都会更新。当删除“硬连接”时,只有所有的“硬连接”均被删除,其文件才会从硬盘上消失。
二、创建硬连接
前面讲过,“硬连接”只适用于NTFS系统分区,且不能跨分区创建“硬连接”,所以在建立“硬连接”时,首先要检查文件分区类型。如果是FAT32,需先把分区格式转换为NTFS。以Windows XP系统为例,具体方法是:在命令行下输入convert X:/FS:NTFS,按回车重启,并耐心地等待转换完成。其中X代表所要转换的盘符,用convert命名转换的好处是原有的数据不会丢失,当然整个转换过程不能被中断。
在Windows XP系统中创建“硬连接”的语法前面已经介绍。在Windows Vista和Windows 7中,“硬连接”创建命令简化为:mklink。即命令行输入:mklink /h d:2.txt d:1.txt,就会在1.txt和2.txt之间建立“硬连接”关系。
如果觉得使用命令行不方便,还可以使用Link Shell Extension,这是一个能将“硬连接”创建功能集成到Windows资源管理器中的免费软件。用户首先需要从网上下载,然后解压缩并进行安装。接着在资源管理器的右键菜单中找到Pick Link Source和Drop HardLink的选项,前者用于选定源文件,后者用于创建“硬连接”(如下图)。
三、用“硬连接”工具为系统减肥
在了解了“硬连接”技术的特性和创建方法之后,我们回到本文开头提到的问题:使用“硬连接”技术为系统减肥。迄今为止,笔者找到的唯一一款此类工具软件是“Duplicate
当务之急是给硬盘减肥,把那些重复的文件副本删除。最初笔者找来了包括NoClone、Easy Duplicate Finder等几款重复文件查找软件,但试用下来都不理想。一是搜索速度太慢;二是找到的文件副本需要一一确认才能删除,费时费力;三是文件副本一旦删除,该份教案就会丧失完整性,今后再用时想找回这些素材又得费一番周折。
我们不得不想一些更好的办法,比如用快捷方式来替换文件副本,这样做既解决了文件冗余的问题,又保证了教案的完整性,可谓一举两得。但遗憾的是,搜遍了互联网也找不到具备这一功能的软件。无奈之下,笔者准备自己动手来开发这一程序。就在搜集相关的编程技术资料时,笔者无意中找到了比“快捷方式”更好的解决方案——“硬连接”技术。这一技术的好处在于:即使源文件被改名或移动,其“快捷方式”(硬连接)也不会失效。下面我们就来了解一下神奇的“硬连接”技术。
一、什么是“硬连接”
一直以来,大多数Windows用户只知有快捷方式,却不知“硬连接”为何物,主要是因为微软一直没有对该技术做太多的介绍,只在英文版的MSDN中轻描淡写了一句,从而被大多数Windows用户所忽略。其实,“硬连接”是NTFS文件系统的特有属性,也就是说所有支持NTFS的操作系统都支持这一技术,当然也包括Windows(Windows 2000以上版本)。
下面以Windows XP系统为例,通过一个小实验来说明“硬连接”的特性。
首先,在D盘(NTFS分区)根目录上建立一个名为“1.txt”的文本文件,然后在Cmd命令行键入:fsutil hardlink create d:2.txt d:1.txt。该命令将建立现有文件和新文件之间的NTFS硬连接,此时我们就在D盘根目录上创建了一个名为“2.txt”文件,它就是“1.txt”的硬连接。fsutil命令的语法是:fsutil hardlink create NewFilename ExistingFilename,其中NewFilename参数为新文件名,Existing Filename参数为源文件名。其次,将“2.txt”文件移动到D盘下的任意一个子目录,更改“1.txt”文件的内容并存盘,这时再打开“2.txt”,发现“2.txt”内容自动更改了。反之,如果我们修改的是“2.txt”,那么“1.txt”中的内容也会自动更改。
上述实验证明:在同一个盘符下,“硬连接”不会因为文件的改名或移动,而彼此断开链接,“硬连接”各副本之间时刻保持同步并自动更新。我们可以把“硬连接”形式的文件副本理解成硬盘上指向同一个文件地址的指针,所以无论你修改哪一个,其内容都会更新。当删除“硬连接”时,只有所有的“硬连接”均被删除,其文件才会从硬盘上消失。
二、创建硬连接
前面讲过,“硬连接”只适用于NTFS系统分区,且不能跨分区创建“硬连接”,所以在建立“硬连接”时,首先要检查文件分区类型。如果是FAT32,需先把分区格式转换为NTFS。以Windows XP系统为例,具体方法是:在命令行下输入convert X:/FS:NTFS,按回车重启,并耐心地等待转换完成。其中X代表所要转换的盘符,用convert命名转换的好处是原有的数据不会丢失,当然整个转换过程不能被中断。
在Windows XP系统中创建“硬连接”的语法前面已经介绍。在Windows Vista和Windows 7中,“硬连接”创建命令简化为:mklink。即命令行输入:mklink /h d:2.txt d:1.txt,就会在1.txt和2.txt之间建立“硬连接”关系。
如果觉得使用命令行不方便,还可以使用Link Shell Extension,这是一个能将“硬连接”创建功能集成到Windows资源管理器中的免费软件。用户首先需要从网上下载,然后解压缩并进行安装。接着在资源管理器的右键菜单中找到Pick Link Source和Drop HardLink的选项,前者用于选定源文件,后者用于创建“硬连接”(如下图)。
三、用“硬连接”工具为系统减肥
在了解了“硬连接”技术的特性和创建方法之后,我们回到本文开头提到的问题:使用“硬连接”技术为系统减肥。迄今为止,笔者找到的唯一一款此类工具软件是“Duplicate