需求分析
OneDrive作爲一個同步、備份雲盤,但其中的同步目錄只有默認的三個,需要將文件放入這些指定目錄下才可以實現同步:
![]()
另外,若開啓了這些目錄的同步功能,OneDrive會將這些文件的所在目錄自動轉移到其根目錄下(一般在C盤),且難以復原。
如何同步自定義的目錄是本文章將要解決的問題。
具體實現
mklink是一條內置Windows系統的命令,實現創建某文件的符號鏈接或硬鏈接。
打開cmd窗口,輸入mklink即可查看基本語法信息:
![]()
對於本次的需求,使用以下命令即可:
mklink /D <link> <target>
D不區分大小寫,可以用/d替代/D
<link>:目標位置,用雙引號包裹
<target>:源文件目錄,用雙引號包裹
要把"C:\test"同步到OneDrive的根目錄中(會自動生成同名文件夾),只需要在cmd中輸入:
mklink /D "{你的OneDrive根目錄}\test" "C:\test"
提示如下信息即成功:
![]()
遇到的問題
使用符號鏈接會產生一個新的問題,在遇到文件修改時無法實時被同步,需要退出並重新打開OneDrive後才能觸發同步。此外,文件永遠顯示“同步被掛起”的狀態。
解決方案:
將實際文件夾存放在OneDrive中,映射到本地,這樣可以正常實現雙向實時同步。
對於另一種解決方案,通過使用插件,定時在OneDrive的根目錄生成空文件以觸發它的同步機制,有興趣的朋友可以前往以下鏈接自行查看:
GitHub - ktheod/OneDriveBully: Bully your OneDrive to sync Symbolic Link Folders
由於目前作者已停止對該插件的更新維護,所以本人沒有測試過該插件。
其他
符號鏈接和快捷方式
簡單來說,mklink生成的是一個與源對象相同類型的文件或文件夾(映射),不佔用磁盤空間,修改時可以雙向修改;而創建快捷方式生成的僅僅只是.lnk文件,訪問時需跳轉回源目錄。
容量擴充購買建議
Microsoft 365 家庭訂閱,可以擴充一年OneDrive1TB容量,並附帶一年Office,最多可供6人使用。
參考內容
Onedrive 如何同步一個文件夾? - 知乎 (zhihu.com)
mklink | Microsoft Learn
windows 10 - 2-Way sync doesn't work in OneDrive when using symbolic links or junctions - Super User
GitHub - ktheod/OneDriveBully: Bully your OneDrive to sync Symbolic Link Folders
更多遊戲資訊請關註:電玩幫遊戲資訊專區
電玩幫圖文攻略 www.vgover.com
