能改。vs code安装路径可通过zip版解压到非系统盘实现,再通过--user-data-dir参数或code_user_data_dir环境变量将用户数据(含扩展)一并迁移至指定路径。

VS Code 安装路径能改吗?默认确实会进 C 盘,但可以避开
VS Code 桌面版安装程序(VSCodeSetup-x64.exe)运行时,默认把主程序、缓存、扩展都塞进 C:\Users\<username>\AppData\Local\Programs\Microsoft VS Code</username> 和 AppData\Roaming\Code。这不是“不能改”,而是安装器没给你显式选路径的界面——但有绕过办法。
用 ZIP 版跳过安装器,直接放 D 盘或任意位置
这是最干净、最可控的方式:不走 Windows Installer,也就不会硬塞进 AppData\Local\Programs。你解压到 D:\tools\vscode 或 E:\dev\vscode-portable 都行,启动后所有用户数据(扩展、设置、缓存)默认仍写进 AppData\Roaming\Code ——但可以一并挪走。
- 去官网下载
VSCode-win32-x64-{version}.zip(不是.exe) - 解压到非系统盘,比如
D:\vscode - 双击
Code.exe启动,它会自动识别已存在的AppData\Roaming\Code,但不会往Local\Programs写东西 - 想彻底隔离?启动时加参数:
Code.exe --user-data-dir="D:\vscode\data",这样连配置和扩展都落在你指定位置
改注册表或环境变量强制重定向用户数据目录
就算用了 ZIP 版,VS Code 默认还是把扩展、设置、日志全丢进 AppData\Roaming\Code,这部分占空间且无法在安装时选。靠 CODE_USER_DATA_DIR 环境变量就能全局接管。
- 新建系统环境变量:
CODE_USER_DATA_DIR,值设为D:\vscode\user-data(路径必须存在) - 重启 VS Code(包括任务栏里残留的进程),再打开就自动用新路径存扩展和
settings.json - 注意:这个变量只影响「用户数据」,不影响插件本身的安装包缓存(
Cache目录仍可能出现在AppData\Local,但体积小得多) - 如果同时用了
--user-data-dir命令行参数,它优先级高于环境变量
扩展安装路径藏得深,但其实跟着 user-data-dir 走
很多人以为扩展是单独装在某个地方,其实它们就放在 user-data-dir 下的 extensions/ 子目录里。只要上面两步做对了,扩展自然就离开 C 盘。
- 扩展实际路径是:
<user-data-dir>\extensions\ms-python.python-2024.x.x</user-data-dir>这类结构 - 别手动剪切已有扩展文件夹——VS Code 启动时会校验签名,乱动会导致扩展禁用
- 换路径后首次启动会重新安装已启用的扩展,走的是网络下载,不是迁移旧文件
- 如果你用的是 Remote-SSH 或 WSL,远程端的扩展存于对应系统的
~/.vscode-server,和本地路径无关
真正麻烦的不是“能不能挪”,而是 VS Code 把“程序本体”和“用户状态”拆成两套路径逻辑,又没在 UI 里暴露。手动干预时最容易漏掉 CODE_USER_DATA_DIR 这个环境变量,结果程序跑 D 盘了,扩展和设置还在 C 盘偷偷吃空间。










