OneDrive中对软链接进行实时更新

问题介绍

在OneDrive中使用了软链接对外部文件进行了指定,实现了OneDrive可以同步外部文件的功能,但是不能实时的进行队修改及逆行更新,只有每次暂停关闭后OneDrive才会去检查软链接的文件是否进行了修改,然后进行云端文件的操作。

软链接介绍

软链接(Symbolic Link)是一种特殊类型的文件,它是指向另一个文件或目录的指针。软链接与硬链接类似,但不同点在于软链接可以跨越文件系统甚至跨越网络链接到一个目标文件或目录。软链接可以在使用上像一个普通的文件或目录一样,但是对它的所有操作其实都是对目标文件或目录的操作,因此,软链接可以为用户提供跨多个目录访问同一个文件的便利。

硬链接介绍

硬链接(Hard Link)是指在文件系统中,将一个文件名与一个 inode 进行绑定,使得多个文件名可以指向同一个 inode,从而实现多个不同的文件名可以指向同一个文件的目的。

硬链接的特点是:

  1. 硬链接创建后,其指向的文件与原文件共享相同的 inode 和数据块,因此无论是硬链接还是原文件被修改,它们的内容都会同步更新。
  2. 硬链接的文件名和原文件名在文件系统中没有区别,因此删除其中一个文件名并不会影响文件本身的存在。
  3. 硬链接只能在同一个文件系统中创建,并且不能递归创建链接。

硬链接的应用场景主要是在系统管理和软件开发中,可以用来优化空间利用、实现文件共享、备份等功能。

解决方案

主要解决方案

对软链接进行更新

  • 在OneDrive可上传的文件夹中建立外部的软链接
    • 然后监控软链接的源文件夹,当源文件夹修改,便重建软链接再次指向源文件夹。

gitee和GitHub中的有很多开源的项目,这里介绍我使用的一个syncForOneDrive。直接下载exe
开源链接: https://gitee.com/dycimage/syncForOneDrive

可以直接下载发行版进行运行,接下来介绍使用。

使用

首先确保你的OneDrive中在一个父文件夹下放入·使用软链接的文件夹·
结构为:

父文件夹\link1
父文件夹\link2
父文件夹\link3
# ps: 即父文件夹下的子文件夹为软链接

运行时,exe后面的参数添加为你父文件夹的路径,便可监控子文件夹的源文件变化。

main_for_winswService.exe "C:\Users\OneDrive\documentation(backup)" 

当然也可以多参数

main_for_winswService.exe "C:\Users\OneDrive\1" "C:\Users\OneDrive\2"
每次运行程序?

既然有了exe文件那就可以使用任务计划或者将exe作为服务运行。
https://gitee.com/dycimage/syncForOneDrive中使用winsw,可以参照文档进行设置。

同步软件

  • 使用同步软件,有直接同步到云端的,Duplicati、freesync等

基于云端文件

  • 对于已经在云端的文件可以先下载下来,然后将OneDrive已下载的文件夹作为软链接的源。
    这样可以使得修改同步,相当于你一直修改的C盘中OneDrive的文件。
mklink /j 起一个文件名 源文件地址
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值