当前位置: 首页 > 工具软件 > mklink > 使用案例 >

mklink命令 详细使用

郗亦
2023-12-01

注: F和G盘为两个不同的磁盘

文件夹指向(软链接)

F:\>mklink /j "F:\a" "G:\b"
为 F:\a <<===>> G:\b 创建的联接

1,所有读取写入a文件夹的东东,都在b中, 创建时a文件夹自动生成,如果a存在无法创建
2,在使用中如果b文件夹不存在会发生读取写入错误
3,F 和 G为两块不同的磁盘

文件夹指向(符号链接)

F:\>mklink /d "F:\a" "G:\b"
当文件已存在时,无法创建该文件。

删除a文件夹

F:\>mklink /d "F:\a" "G:\b"
你没有足够的权限执行此操作。

WIN + R c:\Windows\System32\   找到 cmd.exe  右键管理员打开

F:\>mklink /d "F:\a" "G:\b"
为 F:\a <<===>> G:\b 创建的符号链接

删除文件夹b,a无法访问,  删除a文件夹,b存在可读写

软链接和符号链接的区别

感觉和 /j 差不多

F:\>mklink /?

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

        /D      创建目录符号链接。默认为文件
                符号链接。
        /H      创建硬链接而非符号链接。
        /J      创建目录联接。
        Link    指定新的符号链接名称。
        Target  指定新链接引用的路径
                (相对或绝对)。

查了查:

​​​​​​​mklink_百度百科     Mklink | Microsoft Docs

 参考: windows系统下的文件夹链接功能mklink/linkd_李未名2020的博客-CSDN博客_链接文件夹

        符号链接和软链接大致相同,区别在于,软链接是绝对路径链接,而符号链接允许相对路径的链接。

        比如,分别创建c:\data\tmp的符号链接c:\1和软链接c:\2,那么c:\1指向的就是同级文件夹下的data文件夹下的子文件夹tmp,而c:\2指向的是c:\data\tmp这样的绝对路径。影响就是,如果把c:\1和c:\2这两个文件夹移动到d盘,那d:\1的链接就失效了,而d:\2仍然有效。

F:\>mklink /d "F:\a1" "G:\b1"
为 F:\a1 <<===>> G:\b1 创建的符号链接

F:\>mklink /j "F:\a2" "G:\b2"
为 F:\a2 <<===>> G:\b2 创建的联接

移动b1至E:\b1  (E为第三个硬盘)  a1不可用
移动b2至E:\b2  (E为第三个硬盘)  a2不可用
复制或剪切  a1或a2   至E 发现a2 不会发生变动 除非删除它 

文件同步

F:\>mklink /h "F:\a\1.txt" "G:\b\2.txt"
系统找不到指定的路径。
F:\>mklink /h "F:\c\1.txt" "G:\d\2.txt"
系统无法将文件移到不同的磁盘驱动器。
F:\>mklink /h "F:\c\1.txt" "F:\e\3.txt"
当文件已存在时,无法创建该文件。

删除 1.txt

F:\>mklink /h "F:\c\1.txt" "F:\e\3.txt"
为 F:\c\1.txt <<===>> F:\e\3.txt 创建了硬链接

查看c文件夹,自动创建了1.txt, 打开1.txt 写入 "asdfasdfa"保存, 查看3.txt, 同样的内容在3.txt 中 ,

删除3.txt , 打开1.txt 写入 "asdfasdfa"保存, 3.txt没有恢复

复制1.txt 至 e\ 改名3.txt  打开1.txt写入保存   3.txt没有同步, 再次创建

F:\>mklink /h "F:\c\1.txt" "F:\e\3.txt"
为 F:\c\1.txt <<===>> F:\e\3.txt 创建了硬链接

改写3.txt 查看1.txt 可以看到内容同步修改了, 删除1.txt, 改写3.txt, 保存, 1.txt没有生成, 复制3改名1至c夹, 改写1内容保存,查看3,无变动~   


默默的输入了两条命令,开始安装软件... ...

mklink /j "C:\ProgramData\microsoft\VisualStudio\Packages"  "F:\VisualStudio\CDisk\Packages"
mklink /j "C:\Program Files (x86)\Microsoft Visual Studio\Shared" "F:\VisualStudio\CDisk\Shared"

安装好的软件如何移动到新的文件夹?找到一个软件:FolderMove™ 符号链接创建器
也可以理解为图形化mklink的一个软件,我放到网盘了:​​​​​​「FolderMove」https://www.aliyundrive.com/s/oLf1Gubw7W5

 类似资料: