code --list-extensions 可导出已安装插件id列表,仅含启用插件;需确保code命令加入path,保存时用>重定向,windows powershell建议用out-file指定utf-8编码,导入时推荐循环执行code --install-extension。

导出已安装插件列表用 code --list-extensions
VS Code 自带命令行工具,不用装额外插件就能导出。打开终端(Windows 用 PowerShell 或 CMD,macOS/Linux 用 Terminal),直接运行:
code --list-extensions会输出所有已安装插件的 ID,每行一个,比如
ms-python.python、esbenp.prettier-vscode。
常见错误:提示 code: command not found —— 这说明 VS Code 没有把 code 命令加到系统 PATH。在 VS Code 窗口按 Ctrl+Shift+P(macOS 是 Cmd+Shift+P),输入 “Shell Command: Install 'code' command in PATH”,选中并执行一次即可。
保存为文件时别漏掉重定向符号
想存成文本方便备份或迁移,得用 shell 重定向。比如导出到当前目录的 extensions.txt:
code --list-extensions > extensions.txt注意是
>,不是 >>(后者会追加,可能混入旧记录)。如果路径含空格或中文,建议切到英文路径下操作,避免某些 shell 解析异常。
Windows 用户若用 PowerShell,> 默认 UTF-16 编码,部分工具读取可能乱码。可改用:
code --list-extensions | Out-File -Encoding utf8 extensions.txt
只导出启用的插件?得配合 --show-versions 和手动过滤
code --list-extensions 默认只列出启用的插件,但如果你禁用了某些插件又想确认它们是否在列表里——它不会显示。也就是说,这个命令天然“只导启用项”,无需额外参数过滤。
不过加上 --show-versions 能同时看到版本号,对协作或回滚有用:
code --list-extensions --show-versions > extensions-with-version.txt输出形如
ms-python.python@2024.6.0。注意:版本号格式依赖插件发布方式,有些第三方插件可能不带版本(显示为 @ 后空)。
导入时用 code --install-extension 逐个装
导出只是第一步,迁移或重装后恢复更关键。不要试图用 xargs 一类批量执行(容易因网络或权限中断),推荐写个简单循环:
while read ext; do code --install-extension "$ext"; done
<p>Windows PowerShell 不支持这种语法,得改用:<br></p><pre class="brush:php;toolbar:false;">Get-Content extensions.txt | ForEach-Object { code --install-extension $_ }注意:如果某插件已存在,code --install-extension 会跳过;但如果本地版本比远程旧,它不会自动升级,得手动更新或删掉重装。
容易忽略的一点:插件依赖的全局配置(比如设置里的 python.defaultInterpreter)不会随插件导出,得单独备份 $HOME/.config/Code/User/settings.json(Linux/macOS)或 %APPDATA%\Code\User\settings.json(Windows)。











