VSCode 修改插件安装目录

前言

使用4种方法修改 Visual Studio Code 插件的默认安装位置。

  1. 修改环境变量
  2. Portable mode
  3. 命令行参数
  4. 符号链接

插件默认安装位置:

  • Windows %USERPROFILE%\.vscode\extensions
  • macOS ~/.vscode/extensions
  • Linux ~/.vscode/extensions

当前 VS Code 版本:1.109.0

方法一:通过环境变量 VSCODE_EXTENSIONS 修改插件目录

?> [!NOTE]
官方文档:Extension Marketplace
这是 VS Code 官方文档明确支持的方法之一。 设置后,VS Code 会全局使用指定的目录作为插件安装位置,不需要额外参数。

设置方法:

  • Windows

    1. 创建好新插件目录(不要放在 VS Code 的安装目录中),例如:D:\VSCodeExtensions

    2. 打开环境变量设置:Win + R → 输入 sysdm.cpl → 确定 → 高级 → 环境变量

    3. 新建系统变量:

      • 变量名:VSCODE_EXTENSIONS
      • 变量值:D:\VSCodeExtensions
    4. 可以将原插件目录 %USERPROFILE%\.vscode\extensions (例如:C:\Users\你的用户名\.vscode\extensions)下的全部文件拷贝到新插件目录,然后重启 VS Code 即可

win 环境变量

  • macOS / Linux

    1. 编辑 shell 配置文件修改环境变量:

    ?> [!NOTE]
    如果 shell 是 zsh,则将接下来所有命令中的 /.bashrc 替换为 /.zshrc

    自动设置:

    echo 'export VSCODE_EXTENSIONS="$HOME/vscode-ext"' >> ~/.bashrc
    # 可以将 "$HOME/vscode-ext" 替换成自定义目录,作为新插件路径
    

    也可以用 vim 手动添加:

    vim ~/.bashrc
    # 手动添加一行:export VSCODE_EXTENSIONS="$HOME/vscode-ext"
    
    1. 重新加载环境变量配置,让当前终端立即生效:
    source ~/.bashrc
    

方法二:使用 VS Code Portable Mode(便携版)

?> [!NOTE]
官方文档:Portable mode
Portable mode 是 VS Code 官方提供的便携版,无需安装,所有数据(包括插件)都将存放在 VS Code 目录下。方便跨开发环境使用。

启用方法:

  1. 只能使用 VS Code 压缩包版本(Windows: .zip, Linux: .tar.gz, ),下载见官方 Download Visual Studio Code
  2. 只需在根目录创建一个 data 文件夹

VS Code 会自动使用 data/extensions 作为插件目录。此方法下无法自动更新

目录结构示例:

VSCode/
 ├─ Code.exe
 └─ data/
      ├─ user-data/
      └─ extensions/   ← 插件目录

方法三:使用命令行参数 --extensions-dir <dir>

?> [!NOTE]
官方文档:Command Line Interface (CLI)
VS Code 的 CLI 功能非常丰富,能够很好地控制启动编辑器的方式。
在命令行界面打开 VS Code 时使用 --extensions-dir <dir> 参数,则可以指定插件安装目录。

使用方法:

  • 创建好新插件目录(不要放在 VS Code 的安装目录中),例如:D:\VSCodeExtensions,然后在 CMD 或者 Shell 中执行以下命令即可:

    code --extensions-dir "D:\VSCodeExtensions"
    

    ?> [!NOTE]
    该方法主要用于多套插件环境需求;每次打开 VS Code 时,都需执行对应某套插件目录的命令。

    执行命令前可使用 code -v 命令判断 code 命令能否正确执行,不能正确执行可重新安装 VS Code 来设置 PATH。例如 Windows:

    命令行 code

  • 如果只有一套插件环境,也可以修改 VS Code 快捷方式(Windows)来快速启动(右键快捷方式→属性→目标)

    在 VS Code 快捷方式的“目标”字段末尾添加参数(注意空格):

     --extensions-dir "D:\VSCodeExtensions"
    

    命令行快捷方式

VS Code 启动后将使用 D:\VSCodeExtensions 作为插件目录。

方法四:使用符号链接(Symbolic Link)重定向插件目录

?> [!NOTE]
符号链接:Symbolic link - Wikipedia
符号链接类似于快捷方式,允许文件和目录在多个位置显示为存在,但实际上它们只存在于一个物理位置。
如果不想修改 VS Code 的任何配置,则可以直接把默认插件目录替换成符号链接,让它指向想要的位置。

链接方法

  • Windows :

    1. 创建好新插件目录(不要放在 VS Code 的安装目录中),例如:D:\VSCodeExtensions

    2. 将原插件目录 %USERPROFILE%\.vscode\extensions (例如:C:\Users\你的用户名\.vscode\extensions)下的全部文件拷贝到新插件目录D:\VSCodeExtensions删除原插件目录 %USERPROFILE%\.vscode\extensions

    3. 创建符号链接(软链接)

      管理员身份下的 CMD 或者 PowerShell 中执行:

      mklink /D "%USERPROFILE%\.vscode\extensions" "D:\VSCodeExtensions"
      
  • Linux / macOS :

    1. 移动插件文件到自定义目录 例如:/mnt/data/vscode-ext (不要提前创建该目录)
    mv ~/.vscode/extensions /mnt/data/vscode-ext
    
    1. 创建软链接
    ln -s /mnt/data/vscode-ext ~/.vscode/extensions
    
    1. 验证链接正确
    ls -la ~/.vscode/extensions
    # 应该显示: extensions -> /mnt/data/vscode-ext
    

无需对 VS Code 做任何更改,插件目录就已被重定向。

软链接取消方法

  • Windows :

    去资源管理器删除 %USERPROFILE%\.vscode\extensions 文件夹,或者:

    rmdir "%USERPROFILE%\.vscode\extensions"
    
  • Linux / macOS :

    rm ~/.vscode/extensions
    

注意

!> [!IMPORTANT]
非 Portable mode 下,不要将插件目录或其他用户数据放在 VS Code 的安装目录中,否则更新时会被删;
VS Code 更新时,安装目录不是“增量更新”,而是“整个版本目录替换”。

优先级说明

VS Code 在决定插件目录时遵循以下优先级(从高到低):

  1. Portable Mode(存在 data/ 文件夹时强制使用)

  2. CLI 参数 --extensions-dir <dir>

  3. 环境变量 VSCODE_EXTENSIONS

  4. 默认路径

同时进行多种配置的情况下,只有更高优先级的会生效。

总结

  • 四种方法可以根据场景各取所好,所有已安装的插件都可以拷贝到新插件目录继续使用。

  • 方法对比

方法 启动优先级 适用场景 关键特性
环境变量 VSCODE_EXTENSIONS 推荐 官方支持;简单稳定;全局生效
Portable Mode 最高 便携、隔离环境 强制使用 data/extensions;完全隔离
CLI 参数 --extensions-dir <dir> 多套插件环境 显式覆盖环境变量;适合高级用户
符号链接 想保持默认行为 对 VS Code 完全透明;兼容性好
posted @ 2026-02-06 13:07  凌雪寒  阅读(4057)  评论(1)    收藏  举报