mklink 命令使用教程

mklink 命令是 Windows 自带的命令,除了在 Win10 系统下使用,在比较早的系统比如 Win 7、Win Vista、Win 8 和 Win 8.1 也都是可以使用的。不过在除了 Win 10 之外的系统里使用,是必须使用管理员权限的,否则会提示“你没有足够的权限执行此操作。”,当然经过我验证,Win 10 有时候也是需要管理员权限的。

既然是 Windows 自带的命令,我们打开命令行,看看这个官方给的这个命令的用法是什么,输入:

1
mklink /?

这时候,系统会给出 mklink 命令的帮助

1
2
3
4
5
6
7
创建符号链接。
MKLINK [[/D] | [/H] | [/J]] Link Target
        /D        创建目录符号链接。默认为文件符号链接。
        /H        创建硬链接而非符号链接。
        /J        创建目录联接。
        Link      指定新的符号链接名称。
        Target    指定新链接引用的路径(相对或绝对)。

上面这个帮助内容,看着是不是也不是特别明白,我举个案例就明白了。为了方便我举例,所以我在D盘在 Simple 文件夹下面建了两个文件夹,分别是 Link 文件夹和 Target 文件夹。

  1. 创建文件符号链接:什么参数都不带,就是默认创建文件符号链接。使用这个命令是需要管理员权限的,方法就是在【命令提示符】上点右键,选择【以管理员身份运行】。

    然后输入下面命令,回车:

    1
    mklink d:\Simple\Link\text.txt d:\Simple\Target\text.txt

    这时候,我们打开 Link 文件夹,就会发现下面出现了一个类似于快捷方式的文件:

    但是这个 text.txt 并不是快捷方式,是一个符号链接,我们可以在 Link 文件夹下面正常打开和使用,但是实际上这个文件是存储在 Target 文件夹下的。

    这样相当于两个不同的文件夹下面出现了两个相同的文件,对这两个文件编辑哪个都会同时改变。


  2. 带 /D 参数,创建目录符号链接。同样这个也是需要管理员权限的命令行,输入下面命令:

    1
    mklink /d d:\Simple\Link\Target d:\Simple\Target

    这时候我们会发现 Link 文件夹下面多了一个文件夹图标的文件:


    同样这个也不是快捷方式,相当于一个虚拟的文件夹,而这个文件夹真正存储位置是 d:\Simple\Target,同样可以正常在 Link\Target 目录下进行存储文件不占用这个文件夹的空间。

    我们打开新的 Target 文件夹,就会发现,地址栏跟标题栏的路径是不一样的,标题栏的是真实路径,而地址栏的是虚拟路径:



  3. 带 /J 参数,创建目录联接。之所以第三个介绍这个,是因为这个命令跟第2个命令非常相似,而且这个命令无需管理员权限。

    1
    mklink /j d:\simple\link\new d:\simple\target

    这时候 Link 文件夹下面出现了一个带快捷方式角标的 new 文件夹:

    然后我们打开 new,发现标题栏跟地址栏是一样的,好像这个 new 文件夹就存在这里一样,这个跟 /d 是不一样的:

    实际上这个 new 文件夹依然是存储在原来的 d:\simple\target 的位置。

    我就是用这个方便帮那位网友把 iTunes 备份文件夹转移到了 D 盘

    上面的三个命令还都有快捷方式角标,下面这个命令结果你会发现不一样了:


  4. 带 /H 参数,创建硬链接。经过测试硬链接依然不需要管理员权限:

    1
    mklink /h d:\Simple\Link\new.txt d:\Simple\Target\text.txt

    然后出现的结果是这样的,看起来这就是一个文件,没有快捷方式角标:

    我们修改 new.txt,会发现原来的 text.txt 里的内容同样改变了。也就是这实际上是同一个文件。


打赏
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。