可直接用ctrl+shift+数字键(windows/linux)或cmd+shift+数字键(macos)聚焦编号为0–9的终端,如ctrl+shift+3聚焦第3个终端;未创建时自动新建;编号不随关闭重排;自定义terminal.focusatindex命令可支持超10个终端。

如何用快捷键聚焦到某个编号的终端
VSCode 的终端面板支持最多 10 个终端实例(编号 0–9),但默认不显示编号标签,容易误判。想直接跳转到第 3 个终端,不是靠“切换”,而是靠 Ctrl+`(反引号)唤出终端后,立刻按 Ctrl+Shift+3(Windows/Linux)或 Cmd+Shift+3(macOS)——注意是数字键,不是小键盘。这个组合会**聚焦并激活编号为 3 的终端**,无论它是否在前台、是否被折叠。
- 编号从 0 开始:第一个终端是
Ctrl+Shift+0,不是Ctrl+Shift+1 - 如果按了
Ctrl+Shift+5但还没创建第 5 个终端,VSCode 会自动新建一个并聚焦它 - 终端编号不会因关闭而重排:关掉 #2 后,#3 仍叫 #3,不会变成 #2
为什么 Ctrl+PageUp/Ctrl+PageDown 有时不生效
这两个快捷键本意是“在已打开的终端间顺序切换”,但实际行为受终端面板状态影响极大。常见失效场景包括:
- 终端面板未处于焦点状态(比如光标还在编辑器里):必须先按
Ctrl+`或点击终端区域,让终端获得焦点 - 终端面板被最小化或隐藏:需先用
Ctrl+`显式展开面板 - 存在“集成终端”以外的终端类型(如 Python 调试控制台、Task 输出):它们不参与
PageUp/PageDown切换序列
建议把 Ctrl+PageUp/PageDown 当作“同面板内相邻切换”,而不是跨上下文的通用导航键。
自定义快捷键绕过编号限制(比如快速切到第 12 个终端)
VSCode 原生只支持 0–9 编号,但你可以通过命令 ID 绑定任意快捷键。打开快捷键设置(Ctrl+K Ctrl+S),搜索 terminal.focusAtIndex,找到对应命令,然后添加新快捷键绑定:
[
{
"key": "ctrl+alt+2",
"command": "terminal.focusAtIndex",
"args": { "index": 11 }
}
]
注意:index 是 0 起始的整数,所以 11 对应第 12 个终端。该命令只在终端面板已打开时有效;若面板关闭,需先触发 Ctrl+`。
- 别用
terminal.focusNext替代——它只循环切换前 10 个,且无法指定位置 - 多个终端长时间运行时,编号可能和视觉顺序不一致(比如中间关闭过),建议配合终端标题命名(右键终端 → “重命名”)
终端聚焦失败时最常被忽略的细节
即使快捷键没输错,也常因两个隐蔽状态失败:
- 终端面板被“分离”成独立窗口(比如拖出 VSCode 主窗体):此时所有终端快捷键全部失效,必须把它拖回主窗口底部区域
- 当前工作区禁用了终端(比如某些远程容器配置中
"terminal.integrated.enabled": false):检查设置里该配置项是否为true
编号切换和 PageUp/PageDown 都依赖终端服务进程正常运行,一旦看到终端里显示 Failed to start terminal process,先重启 VSCode 再试。











