随着金山快盘停止服务,急需寻找可替代的同步网盘。Dropbox、onedrive之类由于喜闻乐见的防火墙使用上不方便,首先PASS。国内能够实现同步的网盘尚有百度云同步盘、微云云同步盘、坚果云等,坚果云据传能够实现增量同步,但有容量限制,适合用来做办公文件的多平台、多设备的同步,百度、微云这两个适合用来做文件的备份。
但是问题来了,除了坚果云可以实现多文件夹同步外,其他国内网盘都要求设定一个同步文件夹,放在该文件夹下的文件都可以自动同步到网盘。
使用mklink命令可以让网盘同步任意文件夹。
除了坚果云国内大部分网盘都要求设定一个同步文件夹,放在该文件夹下面的文件都可以自动同步上网盘。但是原来文件夹已做好分类,只有部分需要同步备份,拷到同步网盘下同步,会破坏原有的文件夹结构。那么是否可以在不打乱原有的文件夹结构的情形下,实现多文件夹的同步了?
利用mklink命令实现:同步任意文件夹
经过搜索资料,发现网上有人已经使用mklink命令实现了任意文件夹的同步。
mklink是批处理命令,必须在CMD里面使用。
该命令可以实现文件夹的跳转,令两个文件夹实现等同。
mklink命令各参数解析
MKLINK [[/D] | [/H] | [/J]] Link Target
/D 创建目录符号链接。默认为文件符号链接。
/H 创建硬链接,而不是符号链接。
/J 创建目录联接。
Link 指定新的符号链接名称。
Target 指定新链接引用的路径
/d参数说明:
有了d参数建立的是目录的符号链接,类型是symlink。对于符号链接,除了删除以外的操作都是对源文件的操作,比如复制到其他位置,复制的是源文件,而不是链接。删除符号链接,则是删除链接本身,而不是源文件。删除源文件,链接就打不开了。删除链接,源文件还在。(/D /S 参数创建的文件都使用上述标准)
下面来举个列子,假设坚果云的同步文件夹为D:\我的坚果云。我想把文件夹E:\Work中的文件同步到坚果云的同步文件夹中,并命名为MyWork。那么执行
1.mklink/d D:\我的坚果云\MyWork E:\Work
显示结果为
1.为D:\我的坚果云\MyWork<<===>>E:\Work创建的符号链接
这时候打开D:\我的坚果云会看到多了个叫MyWork 的文件夹(注意:此次不能事先建立MyWork文件夹,必须由系统自动生成,否则会出现“当文件已存在时,无法创建该文件”的错误。同时,若路径中包含空格,必须加“”把路径框起来:mklink /d "D:\我的坚果云\MyWork" "E:\Work" ),显示的是快捷方式的图标,并且不可编辑:
这时,如果在E:\Work添加文件,则在D:\我的坚果云\MyWork中也能看到一样的文件,同时坚果云已经把这个文件同步了。(在D:\我的坚果云\MyWork中添加或删除文件也会影响到E:\Work,这两个文件夹是等同的。)
以后对E:\Work中文件的任意修改都会自动同步到D:\我的坚果云\MyWork上了。
同理,不想同步时,删除D:\我的坚果云\MyWork就可以从坚果云上删除文件,又不影响E:\Work中的文件(因为删除的只是个链接)。
注:如果有用请给文章点个赞。