VSCode 自定义插件安装目录
C盘爆了,发现vscode的插件占了好几个G,好淦!!!!!
前言
使用4种方法修改 Visual Studio Code 插件的安装位置。
- 修改环境变量
- Portable mode
- 命令行参数
- 符号链接
插件默认安装位置:
- Windows
%USERPROFILE%\.vscode\extensions - macOS
~/.vscode/extensions - Linux
~/.vscode/extensions
通过环境变量VSCODE_EXTENSIONS 修改插件目录
[!NOTE] Title
官方文档:Extension Marketplace
这是 VS Code 官方文档明确支持的方法之一。 设置后,VS Code 会全局使用指定的目录作为插件安装位置,不需要额外参数。
设置方法:
- Windows
- 创建好新插件目录(不要放在 VS Code 的安装目录中),例如:
D:\Administrator\.vscode\extensions - 打开环境变量设置:
Win+R→ 输入sysdm.cpl→ 确定 → 高级 → 环境变量 - 新建系统变量:
- 变量名:
VSCODE_EXTENSIONS - 变量值:
D:\Administrator\.vscode\extensions
- 变量名:
- 可以将原插件目录
%USERPROFILE%\.vscode\extensions(例如:C:\Users\用户名\.vscode\extensions)下的全部文件拷贝到新插件目录,然后重启 VS Code 即可
- 创建好新插件目录(不要放在 VS Code 的安装目录中),例如:
- macOS / Linux
- 编辑 shell 配置文件修改环境变量:
1
export VSCODE_EXTENSIONS="/home/username/vscode-ext" - 然后执行:
1
source ~/.zshrc # 或 ~/.bashrc
- 编辑 shell 配置文件修改环境变量:
方法二:使用 VS Code Portable Mode(便携版)
[!NOTE] Title
官方文档:Portable mode
Portable mode 是 VS Code 官方提供的便携版,无需安装,所有数据(包括插件)都将存放在 VS Code 目录下。方便跨开发环境使用。
启用方法:
- 只能使用 VS Code 压缩包版本(Windows: .zip, Linux: .tar.gz, ),下载见官方 Download Visual Studio Code;
- 只需在根目录创建一个
data文件夹
VS Code 会自动使用 data/extensions 作为插件目录。此方法下_无法自动更新_。
目录结构示例:
1 | |
方法三:使用命令行参数 --extensions-dir
[!NOTE]
官方文档:Command Line Interface (CLI)
VS Code 支持通过 CLI 参数指定插件目录的方法来打开软件;
类似于 Atom 可以用--portable定义数据目录,VS Code 也可以使用--extensions-dir指定插件安装目录来打开 VS Code。
使用方法:
- 创建好新插件目录(不要放在 VS Code 的安装目录中),例如:
D:\VSCodeExtensions,然后在 CMD 或者 Shell 中执行以下命令即可:1
code --extensions-dir "D:\Administrator\.vscode\extensions"
[!NOTE]
该方法主要用于多套插件环境需求;每次打开 VS Code 时,都需执行对应某套插件目录的命令。
执行命令前可使用 code -v 命令判断 code 命令能否正确执行,不能正确执行可重新安装 VS Code 来设置 PATH。
- 如果只有一套插件环境,也可以修改 VS Code 快捷方式(Windows)来快速启动(右键快捷方式→属性→目标)
在 VS Code 快捷方式的“目标”字段末尾添加参数(注意空格):VS Code 启动后将使用1
--extensions-dir "D:\Administrator\.vscode\extensions"D:\VSCodeExtensions作为插件目录。
方法四:使用符号链接(Symbolic Link)重定向插件目录
[!NOTE]
符号链接:Symbolic link - Wikipedia
符号链接类似于快捷方式,允许文件和目录在多个位置显示为存在,但实际上它们只存在于一个物理位置。
如果不想修改 VS Code 的任何配置,则可以直接把默认插件目录替换成符号链接,让它指向想要的位置。
链接方法
- Windows :
- 创建好新插件目录(不要放在 VS Code 的安装目录中),例如:
D:\Administrator\.vscode\extensions - 将原插件目录
%USERPROFILE%\.vscode\extensions(例如:C:\Users\用户名\.vscode\extensions)下的全部文件拷贝到新插件目录D:\Administrator\.vscode\extensions,_删除_原插件目录%USERPROFILE%\.vscode\extensions - 创建符号链接(软链接)
在 管理员身份下的 CMD 或者 PowerShell 中执行:
mklink /D “%USERPROFILE%.vscode\extensions” “D:\Administrator.vscode\extensions”
- 创建好新插件目录(不要放在 VS Code 的安装目录中),例如:
- Linux / macOS :
mv ~/.vscode/extensions /mnt/data/vscode-ext
ln -s /mnt/data/vscode-ext ~/.vscode/extensions
无需对 VS Code 做任何更改,插件目录就已被重定向。
软链接取消方法
Windows :
去资源管理器删除
%USERPROFILE%\.vscode\extensions文件夹,或者:
1 | |
Linux / macOS :
1
rm ~/.vscode/extensions
注意
[!IMPORTANT]
非 Portable mode 下,不要将插件目录或其他用户数据放在 VS Code 的安装目录中,否则更新时会被删;
VS Code 更新时,安装目录不是“增量更新”,而是“整个版本目录替换”。
优先级说明
VS Code 在决定插件目录时遵循以下优先级(从高到低):
- Portable Mode(存在 data/ 文件夹时强制使用)
- CLI 参数
--extensions-dir - 环境变量
VSCODE_EXTENSIONS - 默认路径
同时进行多种配置的情况下,只有更高优先级的会生效。
总结
- 四种方法可以根据场景各取所好,所有已安装的插件都可以拷贝到新插件目录继续使用。
- 方法对比
| 方法 | 启动优先级 | 适用场景 | 关键特性 |
|---|---|---|---|
环境变量 VSCODE_EXTENSIONS | 中 | 推荐 | 官方支持;简单稳定;全局生效 |
| Portable Mode | 最高 | 便携、隔离环境 | 强制使用 data/extensions;完全隔离 |
CLI 参数 --extensions-dir | 高 | 多套插件环境 | 显式覆盖环境变量;适合高级用户 |
| 符号链接 | 想保持默认行为 | 对 VS Code 完全透明;兼容性好 |