2023年12月8日发(作者:)
一、mklink 介绍
Linux 下有一个叫符号链接的东东,是 ln 这个链接命令,mklink 和 ln
的功能几乎一样。现在Windows Vista之后的系统自带了mklink的功能。创建符号链接不仅可以当作快捷方式使用,最重要的是重定向链接符可以被程序读取然后重定向真正的位置,这是快捷方式无法做到的。
二、mklink 用法
mklink 只能在命令提示符 CMD 中使用。
创建文件夹链接示例:
在“计算机管理”里把Administrator用户激活,注销后用Administrator登录,或者关闭UAC;
把“C:Users我的用户名”整个目录移到其它盘上,假设移到“D:我的用户名”;
用创建目录链接: /D D:我的用户名 C:Users我的用户名,提示会显示链接已经建立,并且会有“<==>”这样一个符号告诉你这两个目录是等同的;
重新登录你自己的帐号,发现一切都没有变化,变化的只是你的文件将和系统分离,它们将更安全!
下次重装时,还用同一个用户名,先用Administrator登录后把新系统中的”C:Users我的用户名”删除(否则会报无法创建链接),再用第3步把你位于D盘上的目录重新做下链接即可
链接的删除:
删除这个链接符可以通过普通的del命令来删除,也可以在Windows GUI图形环境下删除这个链接符,这个链接符和系统快捷方式是同一个图标,删除方式一样,虽然它们有着本质的区别。
MKLINK [[/D] | [/H] | [/J]] Link Target
/D 创建目录符号链接。黙认为文件符号链接。
/H 创建硬链接,而不是符号链接。
/J 创建目录联接。
Link 指定新的符号链接名称。 Target 指定新链接引用的路径(相对或绝对)。
三、mklink 作用
用 mklink 实现系统和用户目录分离只是一个简单应用,事实上有了链接这个功能后,我们还能将更多的东西分离出来存放,比如Windows的Temp和Log目录等。可以跨盘符存放,用来解决C盘不够的问题,或者使整个电脑的文件更有条理。还有使用Dropbox等一系列的同步工具时,可以把整个我的文档 放到同步文件夹。
mklink让你一链解千愁
熟悉Linux/Unix系统的朋友对于其提供符号链接(Symbolic Link)特性应该深有体会吧。通过符号链接命令(link)我们可以将需要的资源映射到目标位置,而不用将其整个拷贝过去。这不仅节约了磁盘空间,同时方便了用户也不对系统性能造成一定负担。其实在Vista中也有个类似的命令mklink,据笔者所知这不为大家所知,下面我就结合实例演示其具体应用。
(1).创建程序链接
执行“开始→运行”输入cmd打开命令提示符,输入mklink并回车后会看到其参数,大家可以根据需要选择相应的参数完成某个链接任务。假如在笔者电脑的E盘的jp文件夹中有个文件(即e:),要运行该文件需要进入d:fr目录,然后通过双击来运行(命令行下运行类似)。但是,我们知道所有c:windowssystem32下的程序我们不要进入该目录,在命令行(或者通过“运行”)可以直接运行。为了使得该命令可以直接运行我们需要将其拷贝到c:windowssystem32吗?不用,用mklink直接搞定。在命令行下输入命令“mklink c: e:”,如图7所示成功创建
c: <<===>> d:之间的符号链接。然后我们直接在命令行下输入,可以看到直接运行。(图7)
图7 mklink创建程序链接
(2).创建文件夹链接
除了可以创建程序连接外,还可以利用mklink命令创建文件夹连接。比如当系统分区磁盘空间非常紧张时,我们可以把临时文件夹映射到其他更大的分区中,以解放系统分区。在命令行下输入命令mklink /D E:temp
c:windowstemp,这样就将c:windowstemp连接到
E:temp。需要说明的是,创建链接时不能在D盘创建temp即E:temp然后再执行该命令,这样当文件已存在时,无法创建该文件的链接。链接创建完成后,可以在E盘下看到一个名为temp的文件夹,这就是指向c:windowstemp文件夹的链接,双击打开后可以看到下面的文件。(图8)
图7 mklink创建文件夹链接
(3).删除链接
当我们不再需要刚才创建的链接时可以通过del命令来删除,以删除上面的两个链接为例,分别输入命令“del c:”和“del E:temp”即可。(图9)
图8 mklink删除链接
总结:对于系统管理员来说,命令行工具和图形界面工具是互补的,它们各有其优势不可偏废。不过,挖掘和熟练掌握系统集成的命令行工具无疑会极大地提升系统管理的效率。另外,上面列举的几个非常实用的命令行工具同样适用微软的新系统Windows Server 2008和Windows 7。


发布评论