可通过符号链接或目录联接将C盘非系统文件夹迁移至D盘以释放空间:一、用mklink /D创建符号链接;二、用mklink /J创建兼容性更好的目录联接点;三、用PowerShell New-Item创建可脚本化符号链接。

如果您发现C盘空间严重不足,而D盘仍有大量空余容量,则可通过符号链接技术将C盘中非系统关键文件夹迁移至D盘,既释放C盘空间,又保持原有路径功能正常。以下是具体操作步骤:
一、使用mklink创建目录符号链接
该方法通过在原位置创建指向D盘新路径的符号链接,使系统和应用程序仍认为数据位于C盘,实则读写均发生在D盘。适用于用户文件夹(如Documents、AppData子目录)、开发配置目录(如.vscode)等场景。
1、以管理员身份运行命令提示符或PowerShell:按Win+X,选择“Windows终端(管理员)”或“命令提示符(管理员)”。
2、在D盘创建目标文件夹,例如执行:mkdir D:\Documents。
3、将C盘原文件夹内容完整复制到D盘目标位置,推荐使用robocopy命令确保权限与属性保留:robocopy "C:\Users\%username%\Documents" "D:\Documents" /E /COPYALL /XJ。
4、删除C盘原文件夹(务必确认复制完成且无误):rmdir /S /Q "C:\Users\%username%\Documents"。
5、创建目录符号链接:mklink /D "C:\Users\%username%\Documents" "D:\Documents"。
6、验证链接是否生效:在资源管理器地址栏输入C:\Users\%username%\Documents,应能正常打开D盘对应内容;在CMD中执行dir "C:\Users\%username%\Documents" /aL,若显示“
二、使用mklink /J创建目录联接点
目录联接(Junction)是Windows原生支持的硬链接形式,兼容性优于符号链接,尤其适合AppData\Roaming、Local等子目录迁移,且对系统服务识别更稳定。注意:/J仅支持本地卷间链接(C:与D:必须属同一物理硬盘)。
1、关闭所有可能占用目标文件夹的程序,包括浏览器、微信、IDE等。
2、在D盘创建目标路径,例如:mkdir D:\AppData_Roaming。
3、使用robocopy迁移数据(建议进入安全模式执行以规避文件锁定):robocopy "C:\Users\%username%\AppData\Roaming" "D:\AppData_Roaming" /E /COPYALL /R:3 /W:5。
4、重命名原文件夹作为备份:ren "C:\Users\%username%\AppData\Roaming" Roaming.backup。
5、创建目录联接点:mklink /J "C:\Users\%username%\AppData\Roaming" "D:\AppData_Roaming"。
6、检查结果:dir "C:\Users\%username%\AppData" /aL 应显示Roaming为“
三、使用PowerShell New-Item创建符号链接
PowerShell提供更现代、可脚本化的符号链接创建方式,支持自动处理路径变量与错误捕获,适合批量迁移多个配置目录(如.vscode、.cursor等)。需确保系统启用开发者模式或已配置符号链接策略。
1、以管理员身份启动PowerShell。
2、启用符号链接创建权限(如未启用):New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "SymlinkEvaluation" -Value "1" -PropertyType DWORD -Force。
3、移动原始目录并创建链接,例如迁移.vscode:Move-Item "$env:USERPROFILE\.vscode" "D:\.vscode" -Force。
4、执行链接创建:New-Item -ItemType SymbolicLink -Path "$env:USERPROFILE\.vscode" -Target "D:\.vscode" -Force。
5、重复步骤3–4,可依次处理.cursor、.windsurf等其他隐藏配置目录。











