mklink简介

Linux 下有一个叫符号链接的东东,是 ln 这个链接命令,mklink 和 ln 的功能几乎一样。在xp系统下,junction命令要用微软开发的小程序 junction.exe实现,从http://live.sysinternals.com/可以下载。现在Windows Vista之后的系统自带了mklink的功能。创建符号链接不仅可以当作快捷方式使用,最重要的是重定向链接符可以被程序读取然后重定向真正的位置,这是快捷方式无法做到的。

win+r -> cmd -> mklink:

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

默认情况:

  • 文件的符号链接,如没有参数指定,则创建文件的符号链接,删除文件链接不会影响目 标文件,且创建链接时允许目标文件不存在;
  • 目录的符号链接(SYMLINKD) /D该参数可以创建目录的符号链接,删除目录链接不 会影响目标目录,且创建链接时允许目标目录不存在;
  • 目录的软链接(JUNCTION) /J 该参数可以创建目录的软链接(联接),作用基本和符号链接类似,NT6系统的用户目录就是以这种形式存在的;
  • 文件的硬链接 /H 该参数可以创建文件的硬链接,即一个文件的多个别名,NT6系统WinSXS目录下的大部分文件是以这个形式存在的;

mklink的应用

根据上面的介绍大家肯定知道我想干什么了,对!就是利用mklink为网盘加上多目录同步的功能。下面以Dropbox备份某软件的配置为例,其他的网盘都类似:
网盘的同步文件夹是E:/u/Dropbox,需要同步的文件夹是D:/soft1/config我们使用下面的命令:

mklink /D "E:/u/Dropbox/mydata" "D:/soft1/config"

这样E:/u/Dropbox/mydata就指向D:/mydata,相当于两个访问接口。

删除E:/u/Dropbox/mydata不会影响到D:/soft1/config,反之则不行。

按照这种方法就可以让Dropbox等网盘部分不同的文件夹了。

但是现在也有个问题,你会发现只有Dropbox第一次启动或者重启时会同步,你的修改不能马上被Dropbox捕获到,

Dropbox可以使用系统托盘菜单中的暂停和恢复同步来手动让Dropbox对修改进行捕获,

有些网盘如酷盘就没有这个功能,只能利用重启软件来同步,很不方便。

其实这里还有个方法就是:我们反着来,将真实文件夹(如config)放在Dropbox中,在D:/soft1/中创建软连接, 如命令:

mklink /D "D:/soft1/config" "E:/u/Dropbox/mydata"

这样的缺点就是其实根本没有改进网盘不支持多目录备份的问题,而是和系统开玩笑而已,但是这样确实很方便,我目前基本使用这种方法。

How to remove a symbolic link?

To delete a symbolic link to a file or directory, the following command line syntax can be used

(in each case, "linkname" specifies the name of the symbolic link to be deleted):

  • For links to files:

    del linkName
  • For links to directories:
    rmdir linkName  
If you used mklink or mklink /h 
to create a symbolic link or hard link to a file,
then del will delete the link without affecting the target file.
 
If you used mklink /d or mklink /j 
to create a symbolic link or junction for a directory,
then it works like an empty folder.
You need to use rmdir to remove it. 
The target directory will be unaffected.
 
If you instead use del on the link or junction, then it works just like on any other folder:
you are prompted to confirm whether you want to delete all the directory's files (but not subdirectories).
The target directory's files will be deleted if you answer "y".
You can avoid the prompt if you use del /q.
 
In Explorer, if you delete the link or junction, that's all that will be deleted; 
the target folder is unaffected. 
 
This also applies to the Recycle Bin.
When moving the link or junction, you are prompted to confirm that you want to move the "folder".
But actually, only the link or junction will be put in the Recycle Bin, not the target folder.
the target folder is unaffected. 
 
In any case, if you explicitly delete the target file or folder,
then any symbolic links or junctions pointing to it will be left behind,
unusable until the target is recreated.
 
Any hard links to deleted files, or to files in deleted directories, will be unaffected.
 
In Powershell, don't use rmdir!
Use cmd /c rmdir .\Target instead.
I tested this myself and confirmed it here: 
 
 

mklink让网盘同步不同文件夹的更多相关文章

  1. 【Windows使用笔记】使Onedrive同步任意文件夹

    因为度盘实在是有点垃圾,经常看的剧之类的或者其他软件资源啥的动不动就被封. 所以跑去某宝买了一个5T的企业子账号,安全性不清楚,重要的隐私数据反正都用移动硬盘备份了.主要就是存一些资源性的文件吧.而且 ...

  2. Windows如何自定义U盘盘符、文件夹图标、文件夹背景

    自定义U盘盘符.文件夹图标.文件夹背景 注意对于Vista和Win7的用户不支持文件夹图标和文件夹背景的更换 1.自定义盘符:在U盘根目录下新建文件 autorun.inf(可先建.txt文本文档,再 ...

  3. Google Drive 和 Dropbox 同步同一个文件夹目录

     Dropbox 也是非常棒的同步工具,例如先进的增量上传或者更开放的 API 等.可是为什么不曾想过把 Google Drive 和 Dropbox 同时使用呢,我是说,让这两者同时云同步同一个文件 ...

  4. 坚果云无法同步SVN文件夹

    把svn的库放在云盘上,同步到本地,以前在金山快盘.360网盘都用得好好的,换坚果云后,想着肯定没问题,结果发现,不行! 新机子上的版本库可以建起来,但检出时报错: Could not open th ...

  5. Dropbox Folder Sync – 让 Dropbox 同步任意文件夹

    「DropBox」可以说是目前世界上最流行的线上同步工具,非常简单的同步方式, 流畅的档桉上传下载速度,让你可以轻易的在两台.三台电脑之间同步重要资料. 而你要做的步骤只是在每一台电脑安装DropBo ...

  6. 用SQL语句建库建表建约束(用SQl语句在指定盘符创建文件夹)

    一 :创建数据库 创建一个数据文件和一个日志文件(MySchool) create database MySchoolon primary      --默认属于primary主文件组,可省略(--数 ...

  7. 使用dropbox 同步任意文件夹(MAC)

    使用dropbox自动同步自己mac上的文件夹: -My_Programs /Users/foreverycc/Dropbox/My_Program # . must be full absolute ...

  8. 走进Linux01-磁盘分区与文件夹结构

    近期学习Linux,首先安装系统,遇到了磁盘分区.之前仅仅知道Linux分区是从/(根文件夹)開始的,至于磁盘格式,多块盘怎样挂载全然不了解,系统的查询了一下Linux磁盘分区和文件夹结构,整理一下. ...

  9. svn忽略不需要同步的文件夹或文件

    如果某个文件已经提交到了svn,这个时候需要通过svn来把服务器上的改文件删除,然后再在本地,点击该文件 选择把该文件删除,recursively表示递归删除(文件下->下级文件夹->下级 ...

随机推荐

  1. TF-图像的深度和通道的概念(转)

    图像的深度和通道概念 图像的深度: 图片是由一个个像素点构成的,所有不同颜色的像素点构成了一副完整的图像,计算机存储图片是以二进制来进行的. 1 bit : 用一位来存储,那么这个像素点的取值范围就是 ...

  2. html元素分类

    目录 块级元素 内联元素 内联块级元素  总结 一.块级元素(block) 定义:默认情况下,独占一行的元素就是块级元素. 特点: 每个块级元素都从新的一行开始,并且其后的元素也另起一行.(真霸道,一 ...

  3. java基础54 网络通讯的三要素及网络/网页编程的概述

    1.概述 网络编程注意解决的是计算机(手机.平板.....)之间的数据传输问题.        网络编程:不需要基于html基础上,就可以进行数据间的传输.比如:FeiQ.QQ.微信.....     ...

  4. 洛谷P1242 新汉诺塔

    传送门啦 首先要将第n个盘子从x到y,那么就要把比n小的盘子全部移到6-x-y,然后将n移到y 仔细想想:6代表的是3根初始柱,3根目标柱. 6-(x+y) 便是我们的中转柱了,因为到这个位置是最优的 ...

  5. github后端开发面试题大集合(一)

    作者:小海胆链接:https://www.nowcoder.com/discuss/3614?type=0&order=0&pos=5&page=0?from=wb来源:牛客网 ...

  6. 【58沈剑架构系列】互联网公司为啥不使用mysql分区表?

    缘起:有个朋友问我分区表在58的应用,我回答不出来,在我印象中,百度.58都没有听说有分区表相关的应用,业内进行一些技术交流的时候也更多的是自己分库分表,而不是使用分区表.于是去网上查了一下,并询问了 ...

  7. USACO 5.3 Network of Schools

    Network of SchoolsIOI '96 Day 1 Problem 3 A number of schools are connected to a computer network. A ...

  8. bzoj 3926 转换+广义后缀自动机

    思路:重点在于叶子节点只有20个,我们把叶子节点提到根,把20个trie图插入后缀自动机,然后就是算有多少个本质不同的字串. #include<bits/stdc++.h> #define ...

  9. Django实战(20):分页(Pagination)

    在上一节我们实现了针对某个产品的订单订阅功能.但是我们可能需要直接在站点上查询所有的订单.显然,随着时间的增长订单会越来越多,所以分页(Pagination)是个好办法:每次只显示一部分订单. 分页是 ...

  10. 黑马程序员_java基础笔记(09)...HTML基本知识、CSS、JavaScript、DOM

    —————————— ASP.Net+Android+IOS开发..Net培训.期待与您交流! —————————— 基本标签(a.p.img.li.table.div.span).表单标签.ifra ...