一、基础命令
1、参数清单
直接在命令提示符号窗体中执行 mklink
,能够获取到对应的相关参数提示。
>mklink 创建符号链接。 MKLINK [[/D] | [/H] | [/J]] Link Target /D 创建目录符号链接。默认为文件 符号链接。 /H 创建硬链接而非符号链接。 /J 创建目录联接。 Link 指定新的符号链接名称。 Target 指定新链接引用的路径 (相对或绝对)。
测试目录如下:
>tree /f . 卷 软件卷 的文件夹 PATH 列表 卷序列号为 C268-6134 D:\MKLINKCASE │ test.txt │ └─folder file.txt
2、默认执行指令
执行指令如下:
>mklink link D:\mklinkcase\folder\file.txt 你没有足够的权限执行此操作。
有以上提示可知,默认执行命令时,需要管理员权限。以管理员权限运行命令提示符。
>mklink link D:\mklinkcase\folder\file.txt 为 link <<===>> D:\mklinkcase\folder\file.txt 创建的符号链接
生成结果如下,文件类型为 .symlink
类型,默认情况下,能够生成 目标路径文件
快捷链接。删除文件或将当前目标指向为文件夹,链接文件都将失效。
查看文件属性,能够看到为指定文件路径。
3、创建符号链接
符号链接,有点类似于单独开放的一个文件夹入口,并不能支持指定文件。
指定指令如下:
>mklink /D folderdir D:\mklinkcase\folder 为 folderdir <<===>> D:\mklinkcase\folder 创建的符号链接
执行效果如下,同时,可以看到除了文件多一个链接标记外,文件类型与实际真实文件夹并没有啥区别。
查看文件属性,结果如下,双击文件能够跳转到对应指向的目标文件夹。
4、创建硬链接
硬链接仅仅能够作用与文件,作用与符号链接类似,相当于直接作为文件目录的另一个入口,删除该文件,原始文件并不会被同时删除,看起来像一个文件副本。创建硬连接执行指令和参数并不需要管理权限执行。
指令执行如下:
>mklink /H linkfile D:\mklinkcase\folder\file.txt 为 linkfile <<===>> D:\mklinkcase\folder\file.txt 创建了硬链接
执行效果如下,当前文件与实际指向的文件真实大小一致。删除实际文件,当前文件,照常能够访问。由此可知,两个文件类似文件入口指针,生成一个及其以上的硬链接时,删除原始文件,并不能将删除。需要将对应的所有硬链接多删除。
5、创建目录联接
创建目录链接,也不需要管理源权限。
指令如下:
>mklink /J linkjiondir D:\mklinkcase\folder 为 linkjiondir <<===>> D:\mklinkcase\folder 创建的联接
执行效果如下,不查看属性感觉和目录链接无明显区别。
和目录链接(左)相比,联接(右)更像是一个真实的文件夹,目录链接,更像是一个快捷链接。
和文件夹(右)相比,联接没有任何其他区别,只是在删除目标文件夹时,联接将不能够正常使用。
二、参考链接
【1】中文:
https://docs.microsoft.com/zh-cn/windows-server/administration/windows-commands/mklink
【2】英文:
https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/mklink
【3】详解:
https://www.cnblogs.com/life-of-coding/p/10871831.html
https://www.jianshu.com/p/b1614a073087