You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改VS Code的keybindings.json,使快捷键在当前终端执行命令?

在VS Code当前终端中用快捷键运行命令的配置方法

嘿,这事儿其实很简单,核心就是用VS Code内置的workbench.action.terminal.sendSequence命令,它能直接把指定命令发送到当前活动的终端窗口里执行。我给你一步步拆解怎么配置:

第一步:打开keybindings.json配置文件

你可以通过两种方式快速打开:

  • 按下快捷键Ctrl+K Ctrl+S打开快捷键面板,然后点击面板右上角的{}图标("打开键盘快捷方式(JSON)");
  • 或者通过菜单:文件 > 首选项 > 键盘快捷方式,再点右上角的{}。

第二步:添加自定义快捷键配置

在打开的keybindings.json里,你可以添加类似下面的配置项,根据自己的需求修改键位和要执行的命令:

基础示例:全局快捷键运行固定命令

比如设置Ctrl+Shift+N在当前终端启动npm开发服务器:

[
    {
        "key": "ctrl+shift+n",
        "command": "workbench.action.terminal.sendSequence",
        "args": {
            // 这里写你要执行的命令,末尾加\n模拟回车执行
            "text": "npm run dev\n"
        }
    }
]

进阶示例:针对特定文件类型运行当前文件

如果想在编辑Python文件时,按下F6直接在当前终端运行打开的脚本:

[
    {
        "key": "f6",
        "command": "workbench.action.terminal.sendSequence",
        "args": {
            // ${file}是VS Code内置变量,代表当前打开的文件路径
            "text": "python ${file}\n"
        },
        // 只在Python文件编辑窗口生效,避免误触
        "when": "editorLangId == 'python'"
    }
]

关键细节说明

  • \n必须加:它相当于你在终端里按下回车键,没有它的话命令只会输入到终端,不会执行;
  • 内置变量:除了${file},你还可以用${fileBasenameNoExtension}(不带后缀的文件名)、${workspaceFolder}(当前工作区根目录)等,让命令更灵活;
  • when条件:这个字段用来限制快捷键的生效场景,比如terminalFocus表示只有终端窗口聚焦时才触发,editorTextFocus表示只有编辑区聚焦时触发,按需添加即可;
  • 自动新建终端:如果当前没有打开任何终端,这个命令会自动帮你新建一个终端再执行命令。

最后验证配置

保存keybindings.json后,打开终端(或者直接触发快捷键),就能看到命令自动在当前终端执行啦!你可以根据自己的开发场景,复制修改上面的示例,适配不同的语言或命令。

内容的提问来源于stack exchange,提问作者user998163

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 07:03:04