下载帮

您现在的位置是:首页 > 教程分享 > 电脑技巧

电脑技巧

Win10 mklink 命令怎么用,mklink 命令使用教程

2022-05-22 18:16电脑技巧

之前提到帮助一位网友清理C盘的时候,发现他的 iTunes 备份文件夹非常大,于是用 mklink 命令把 iTunes 备份文件夹转移到了 D 盘。

于是我觉得 mklink 这个命令值得好好研究一下,所以我把我研究验证的在 Windows 10 下的 mklink 命令的使用教程发出来,大家可以作为参考。

当然还是那句话,如果你没看懂 mklink 命令怎么用,建议不要尝试。


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

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

mklink /?

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

创建符号链接。

MKLINK [[/D] | [/H] | [/J]] Link Target

/D 创建目录符号链接。默认为文件符号链接。

/H 创建硬链接而非符号链接。

/J 创建目录联接。

Link 指定新的符号链接名称。

Target 指定新链接引用的路径(相对或绝对)。


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    那么我们能不能创建硬链接的目录呢?

    经过测试,并不行。

     


相信通过我的演示,应该明白了 mklink 命令的使用方法了吧。我们既可以把文件“虚拟”到别的目录甚至分区,也可以把文件夹虚拟到别的地方。这个命令还是非常有用的,特别是C盘空间不足的时候,有一些默认存储在C盘的文件夹或者文件就可以转移到D盘等其他空间比较大的分区,同时在C盘相应路径“虚拟”一个文件或者文件夹。

不过,注意,并不是C盘所有文件夹都可以这么处理,特别是系统文件夹,有时候会容易出现错误,一定要慎用。

文章评论