微慑信息网

windows下的mklink符号链接

命令:

mklink

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

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

由于onedrive在同步文件时,仅仅会对一个文件夹进行同步更新,我的目的是让他同时对其他文件夹也进行更新同步,但是无须放在onedrive目录下面:

示例:

λ mklink /j "G:\[email protected]\OneDrive - 湛蓝\test1" C:\Users\fuck\Desktop\CVE-2020-16898--EXP-POC-main"
为 G:\[email protected]\OneDrive - 湛蓝\test1 <<===>> C:\Users\fuck\Desktop\CVE-2020-16898--EXP-POC-main 创建的联接

mklink /j onedrive目录  原始目录

执行命令后,onedrive提示已经上传更新:

切回来看:

test1是创建的符号链接,sec_gay是创建的快捷方式;两个图片是一样的,但是效果完全不一样:

快捷方式仅仅上传了.lnk文件。

而且经测试,在修改原始目录或目标目录时,两个文件夹会同时变动:

当原始目录删除时,目标目录也无法 打开:

但在onedrive云端,还能找到该原始目录的文件:

(mklink /d 则都会被删除)

当在目标目录删除该文件夹时,云端将同步删除:

可用于本地文件临时上传后,将本地文件删除掉,节省空间,比如上传电影什么的,都是很OK的。

拓展阅读(点评/知识):

Question

登录进行投票

https://www.cnblogs.com/liuzhaoyzz/p/9877094.html
https://social.microsoft.com/Forums/zh-CN/95d0efc9-3ae9-4611-bb9d-68560c3c15ee/vista19979318672241120026junction21644symlink3034025991202142284126377?forum=vistazhchs
https://www.cnblogs.com/shangdawei/p/4516869.html
JUNCTION为目录连接,在操作系统看来,就是目录本身,所以操作系统会统计真实文件的大小;SYMLINKD为目录链接,在操作系统看来,它是一个快捷方式,所以只统计这个快捷方式的大小。
symlink 与 junction 在重定向对目录下的子目录和文件的操作上基本没有什么区别。它们两最大的区别在于 symlink 可以用于引用文件,而 junction 只能引用目录

目录符号链接和软链接的区别在于,软链接在创建时会自动引用目标目录的绝对路径,而符号链接允许相对路径的引用,

如分别用 mklink /D dira tdir 和 mklink /J dirb tdir 创建 dira、dirb 对 tdir 的符号链接和软链接,
之后将 dira、dirb 移动到其它目录下,则访问 dira 时会提示“位置不可用”,访问 dirb 时仍然正常指向 tdir;

而分别用 mklink /D dira c:\demo\tdir 和 mklink /J dirb c:\demo\tdir 创建 c:\demo\tdir 的符号链接和软链接,
再将这两个目录链接移动到其它目录下,则 dira 和 dirb 均可正常指向 c:\demo\tdir;

由此可见当创建目录链接时对目标目录使用绝对路径,D 和 J 两个参数实现的目录链接效果是一样的

 

 

本文标题:windows下的mklink符号链接
本文链接:
(转载请附上本文链接)
https://vulsee.com/archives/vulsee_2021/0604_14498.html
转载请附本站链接,未经允许不得转载,,谢谢:微慑信息网-VulSee.com » windows下的mklink符号链接
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

微慑信息网 专注工匠精神

访问我们联系我们