OneDrive 添加同步文件/文件夹
OneDrive 不提供同步其他文件的选项,只可以同步 OneDrive 文件夹下文件
但是,我们可以通过 mklink 命令创建一个符号链接到 OneDrive 文件夹下, OneDrive 将会同步符号链接指向的原始文件
mklink 的使用方法如下
MKLINK [[/D] | [/H] | [/J]] Link Target
/D 创建目录符号链接。默认为文件
符号链接。
/H 创建硬链接而非符号链接。
/J 创建目录联接。
Link 指定新的符号链接名称。
Target 指定新链接引用的路径
(相对或绝对)。
同时,提供一个批处理,通过遍历的方式创建文件夹下所有文件的符号链接,方便对不需要同步的文件进行排除
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
@echo off set source= set /p source="请输入源地址:" set target= set /p target="请输入目标地址:" for %%i in (%source%/*) do ( echo 创建 %target%\%%~nxi 链接 mklink %target%\%%~nxi %%i echo. ) for /d %%i in (%source%/*) do ( echo 创建 %target%\%%~nxi 链接 mklink /D %target%\%%~nxi %%i echo. ) pause |
另外,记录几个小问题
1. %~a 修饰符无法使用
1 |
for /f %i in ('dir /d d:\work') do echo %~ai |
遍历 command 无法使用 %~a 修饰符
2. 循环体内 set 需开启延迟环境变量
1 |
setlocal enabledelayedexpansion |
循环体内 set 需开启延迟环境变量,并使用 ! !(如: !var! )方式引用变量