code --install-extension 必须使用绝对路径,相对路径易失败;支持链式调用但需重复参数;安装后插件默认禁用,需手动启用,并检查签名、版本兼容性及扩展目录结构。

code --install-extension 必须用绝对路径
相对路径在多数环境里会失败,VS Code CLI 不做路径补全,只按字面解析。比如 code --install-extension plugin.vsix 在当前目录执行,很可能报 Unable to install extension 'xxx': file not found。
实操建议:
- Linux/macOS 下用
$(pwd)/plugin.vsix或完整路径如/home/user/ext/prettier-3.2.5.vsix - Windows 下避免单反斜杠,用正斜杠
C:/ext/vscode-eslint-2.4.0.vsix或双反斜杠C:\ext\vscode-eslint-2.4.0.vsix - 安装前先
ls -l /path/to/plugin.vsix(Linux/macOS)或dir C:extplugin.vsix(Windows)确认文件存在且可读
一次装多个 .vsix 的正确写法
code --install-extension 支持链式调用,但不能用空格分隔多个文件名,必须每个都带参数。错例:code --install-extension a.vsix b.vsix 只会装第一个。
正确写法:
code --install-extension ./a.vsix --install-extension ./b.vsix --install-extension ./c.vsix- 最多支持 10 个
--install-extension,超了就分批执行 - 批量脚本里建议加
|| echo "failed: a.vsix"捕获失败项,避免静默跳过
安装后插件不启用?检查这三处
命令行安装默认禁用,尤其含 "workspace"、"terminal" 等权限声明的插件,不会自动激活。
常见卡点:
- 没手动点击「启用」:打开 Extensions 视图,找到插件,点右上角「Enable」按钮
- 被工作区禁用:左下角齿轮 → Extensions → 找到插件 → 看右上角是否显示
Disable (Workspace) - VS Code 版本不兼容:打开插件详情页(右键 → Extension Details),滚动到底部查
engines.vscode字段,例如"^1.85.0"表示最低需 VS Code 1.85,旧版本装了也启不动
为什么装完重启 VS Code 还看不到插件
不是所有失败都会弹错误框,很多是静默跳过加载——尤其是签名校验失败时。
典型现象和排查路径:
- 插件安装后立即消失:看 Developer Tools Console(
Developer: Toggle Developer Tools)是否有Extension 'xxx' is not signed - 日志里出现
Extension host terminated:大概率是插件依赖的 API 版本高于当前 VS Code - 扩展目录里有文件但没加载:进
~/.vscode/extensions/(Linux/macOS)或%USERPROFILE%AppDataRoamingCodeExtensions(Windows),确认子目录名是否匹配.vsix包内顶层目录(如esbenp.prettier-vscode-9.10.3/),少一个字符都不行
code --install-extension 这条命令,而在路径、权限、签名、版本这四个环节的交叉验证。离线环境下没有 Marketplace 回退机制,每一步都得手动对齐。











