mklink命令在windows系统中用于创建符号链接,属于cmd的内置命令。我们可以通过打开命令提示符来查看mklink的具体用法和语法说明。首先点击“搜索”图标
12,输入“cmd”或“命令提示符”,然后选择“以管理员身份运行”启动命令行工具。接着输入
mklink并回车,即可显示该命令的详细信息。
mklink命令语法如下:
MKLINK [[/D] | [/H] | [/J]] Link Target
/D 创建目录符号链接,默认为文件符号链接
/H 创建硬链接而非符号链接
/J 创建目录联接点
Link 指定新符号链接的名称
Target 指定链接所指向的目标路径(支持相对或绝对路径)示例:在
C:\Users\WeberZhou\.vscode\extensions处创建一个指向实际路径
D:\Microsoft VisualStudioCode\VScode Extensions\的目录符号链接。
mklink /D "C:\Users\WeberZhou\.vscode\extensions" "D:\Microsoft VisualStudioCode\VScode Extensions\"
注意事项:i)各参数之间必须以空格分隔;ii)所有路径建议使用英文双引号包裹;iii)推荐使用绝对路径以避免链接失效。
3. 参数 /D /H /J 的区别说明
参数说明:①
/D用于创建目录的符号链接(软链接),支持相对或绝对路径;②
/H用于创建文件的硬链接,属于硬链接类型;③
/J用于创建目录联接点,也是一种软链接,但仅支持绝对路径;④ 若不指定这三个参数,则默认创建的是文件的符号链接,扩展名为
.symlink。
举例:若分别为
C:\data\tmp创建符号链接
C:和联接点
C:,其中
C:使用相对路径链接,
C:使用绝对路径链接。当将这两个链接从C盘移动到D盘时,
D:将失效,而
D:仍可正常访问原目录。
文件硬链接是指向同一文件数据的多个入口,例如为
C:\data\1.txt创建硬链接
C:\data\2.txt,这两个文件名实际指向同一存储位置,删除其中一个不会影响另一个的存在。但硬链接无法跨磁盘分区使用。
常用参数为
/D和
/J,两者主要区别如下:
区别一:
/D
创建的是目录符号链接(类似快捷方式),支持相对路径;/H
创建的是硬链接,仅适用于文件;/J
创建的是目录联接点,必须使用绝对路径。
区别二:复制与移动行为不同
- 复制
/D
或/J
生成的链接文件夹时,都会生成目标目录内容的副本,变为普通文件夹; - 剪切
/D
创建的链接到其他位置,链接依然有效,原链接消失,源目录不受影响; - 剪切
/J
创建的链接后,会在新位置生成一个普通文件夹,原目录中的所有内容被迁移过去,原目录变为空,但原链接和联接点仍然存在,只是内容已被清空。










