VSCode终端原生支持多会话管理,无需插件;分屏靠Ctrl+\(垂直)和Ctrl+Shift+5(水平),工作目录需配置"terminal.integrated.cwd": "${workspaceFolder}"避免路径错误,关闭面板不终止进程,须手动Ctrl+C或查杀PID。

VSCode终端根本不需要插件来管理多会话
VSCode自带的集成终端已完全支持多实例、分屏、命名、独立进程等全部能力,装终端类插件(比如“Terminal Tabs”“Multi-command”)不仅多余,还容易覆盖原生快捷键或引发冲突。真正要解决的问题是操作路径和配置习惯——不是功能缺失,而是没走对入口。
分屏不是靠“新建窗口”,而是靠Ctrl+\和Ctrl+Shift+5
很多人误以为“多个终端窗口”等于开多个VSCode主窗口,结果资源吃满、状态串扰。实际上,所有终端都必须从底部终端面板出发:
-
Ctrl+`(Win/Linux)或Cmd+`(macOS)是唯一入口,按一次唤出面板,再按一次新增标签页——但仍是单列,不隔离 - 想左右并排?光标在终端面板内,按
Ctrl+\(垂直拆分),不是Ctrl+Shift+` - 想上下并排?按
Ctrl+Shift+5(水平拆分),若失效,大概率是和系统截图快捷键冲突,需手动在keybindings.json里重绑为Ctrl+Shift+6 - 右上角「+」按钮只加标签页,拖拽标题栏到边缘无效,都不是真分屏
每个分屏终端的工作目录(cwd)不自动继承项目根目录
这是最常踩的坑:你在左栏执行了cd src/api,然后右键→Split Terminal,新终端默认从src/api启动,而不是项目根目录。后果是npm run dev报错“找不到package.json”。
-
terminal.integrated.cwd设置只对“新创建”的终端生效(比如点「+」或Ctrl+Shift+`),不影响已存在的分屏 - 想让所有新终端都从根目录起,设
"terminal.integrated.cwd": "${workspaceFolder}",但得接受它不作用于已拆分的面板 - 临时补救:在新分屏里手动输
cd ${workspaceFolder},或把这句写成别名 alias cdroot='cd ${workspaceFolder}' - Windows用户注意:
terminal.integrated.defaultProfile.windows必须显式指定shell类型(如pwsh或gitbash),否则Ctrl+\拆出来的还是PowerShell
关掉终端面板 ≠ 终止后台进程
点击分屏右上角的×只是隐藏面板,npm run dev、python app.py仍在后台跑,端口被占、CPU空转,但VSCode不提示也不回收。
- 真正终止进程:聚焦该终端,按
Ctrl+C;若无效,用ps aux | grep -i "node\|python"查PID后kill -9 PID - 想自动清理?没法全局启用,但可在
tasks.json里配"isBackground": true+"problemMatcher",让任务退出时触发清理逻辑 -
terminal.integrated.enablePersistentSessions设为true能保存布局,但不会帮你杀进程——它只管“下次打开时还显示这几个分屏”,不管里面跑着什么


















