Onedrive在Windows系统下还是备份首选,多数人也都有5T甚至更大的备份空间。

但常规做法往往是将Onedrive文件保存于系统C盘,再需要同步什么文件或文件夹,则必须将其放入Onedrive文件夹,很不方便的同时,C盘空间也没有那么大。

所以本文有两个目的:一是将Onedrive文件夹指向系统盘以外的资料盘,二是利用CMD命令随便向Onedrive文件夹内添加符号链接,以实现不必放入该文件夹(仍在各自原来的位置不变)的前提下实现Onedrive同步。

一、 将Onedrive文件夹指向系统盘以外的资料盘

onedrive的默认存储目录位于C盘,随着onedrive存储文件的增多,C盘空间有时就会显得捉襟见肘了,尤其是对于我这种购买了office365的用户,30G+的文件存在C盘还是有些浪费,因此一个好的解决办法就是将Onedrive的存储目录迁移到机械硬盘D盘中。

首先我们需要在任务栏中右键Onedrive图标,选择设置,在账户选项中,选择*取消链接此电脑,*此时将显示 OneDrive 设置屏幕,但此时完全可以忽略它。

接下来移动Onedrive文件夹,通常Onedrive存储目录位于C:\Users[用户名]*下,选中Onedrive目录,在顶部主页*菜单中选择移动到*,然后输入文件存储位置,选择**移动***即可。

image-20240111092625074

然后重新登录Onedrive,输入账户和密码后会出现更改 OneDrive 文件夹位置的屏幕。选择更改位置,再选择新的文件夹位置,然后选择确定

image-20240111092719006

之后经过一些默认的操作之后,Onedrive就已经转移到新的目录里了。

二、利用CMD命令随便向Onedrive文件夹内添加符号链接

mklink命令是可以同步目录中的文件的~我们只需要执行对应的操作即可。

具体操作如下:

对于OneDrive而言,默认的同步文件夹共有四个,分别包括:

  1. 桌面”“文档”与“图片”文件夹:

image-20240111092808105

  1. 自动同步的OneDrive文件夹,默认路径为“C:\用户[用户名]”:

image-20240111092944685

其中,自动同步的OneDrive文件夹的实际位置取决于初次配置OneDrive帐号时用户的选择,例如我将这一文件夹放置于G 盘:

image-20240111093013368

一般地,将需要同步的文件或文件夹放入上述四个文件夹内,即可实现本地与OneDrive云端的文件同步。如果我们需要同步电脑中其它位置的文件或文件夹,可以将他们直接复制粘贴到上述四个文件夹内,但比较麻烦。因此,我们可以借助mklink命令实现。

例如,如果我们需要将原本不在OneDrive同步文件夹内的“G:\我的图片”文件夹及其中内容放入OneDrive:

image-20240111093109595

首先,摁下Windows键,输入cmd,选择“命令提示符”,并选择“以管理员身份运行”。

image-20240111093141796

在打开的界面中,输入:

1
mklink /d "G:\OneDrive - webmail.hzau.edu.cn\我的图片" "G:\我的图片"

这里需要注意的是:如果路径中有空格,就要在路径两端加上双引号(当然没空格加引号也没关系)。还有,如果新建的路径目录只支持一级,即不能再在“我的图片”以下建子目录,会提示“系统找不到指定的路径”。当然,后面的源文件夹路径不受此约束。

其中,第一个引号内部前半部分为OneDrive所在的位置,也就是上述2中的自动同步OneDrive文件夹,例子中为G:\OneDrive - webmail.hzau.edu.cn;后半部分为希望放入OneDrive的文件夹的名称,例子中为\我的图片。请注意,此时需要保证自动同步OneDrive文件夹内不含同名的文件夹,例子中即为不含名称为我的图片的文件夹。

第二个引号内部为需要同步的文件夹路径与名称,例子中为G:\我的图片

image-20240111093740870

若为这样的结果,证明操作无误。

此时,自动同步OneDrive文件夹中已出现“我的图片”

image-20240111093825078

相关图片也已经开始上传。

image-20240111093855907

在线查看OneDrive,发现云中已经存在了相关文件。

此外,大家发现没有,上述操作可以指定文件夹为符号链接,但却不能指定单独的文件。

mklink /d命令在Windows中创建的是目录(文件夹)链接。如果您需要创建指向文件的链接,应使用 /h/j 参数代替 /d

这是两个参数的具体使用方法:

mklink /h 创建硬链接,指向文件。例如:

1
mklink /h LinkToFile.txt(同步文件) OriginalFile.txt(源文件)

先进入你想同步某(些)文件的Onedrive文件夹,可以先新建好该文件夹:

以管理员身份打开CMD或Shell,cd到刚刚新建好的文件夹。执行以上命令。

如有多个单文件,则分别指定LinkToFile.txt(同步文件)OriginalFile.txt(源文件)

到新建的文件夹查看,新添加的同步文件都已经到Onedrive同步文件夹并开始同步了!

​ PS:还有一个mklink /j 命令也可以创建目录联接。例如:

1
mklink /j LinkToFolder(同步文件夹) OriginalFolder(源文件夹)
image-20240111100802162