讲师中心 微信公众号
AI工具推荐 视频效率加速

如何在vscode中集成终端并执行Shell命令【教程】

雨伟小哥_3725

雨伟小哥_3725

发布时间:2026-01-17 19:06:02

|

633人浏览过

|

来源于php中文网

原创

VS Code内置终端开箱即用,默认按Ctrl+`呼出,工作目录为打开文件夹根路径;支持多标签、shell切换及自动激活Python虚拟环境;路径和环境变量问题需按系统配置shell配置文件或PATH;命令卡住可用Ctrl+C中断或后台运行;tasks.json中命令失败因非交互式shell,需显式指定路径或注入PATH环境变量。

如何在vscode中集成终端并执行shell命令【教程】

VS Code 内置终端就是开箱即用的,不需要“集成”——你只需要知道它默认在哪、怎么调、为什么有时命令不生效。

终端快捷键和启动位置

按 Ctrl+`(反引号,在 Tab 上方)即可呼出或隐藏集成终端。它默认在编辑器底部面板中启动,工作目录是当前打开文件夹的根路径(即你通过 File → Open Folder 打开的那个目录)。

如果没反应,检查是否被系统或其他插件占用了该快捷键;也可以通过菜单栏 Terminal → New Terminal 手动创建。

  • 多个终端标签页可共存,用 Ctrl+Shift+` 新建一个
  • 右键终端标签页可重命名、复制路径、或选择 shell 类型(如 PowerShell、zsh、bash)
  • 终端启动后自动激活当前 workspace 的 Python 虚拟环境(如果有 .venv 或 venv 目录且配置了 python.defaultInterpreterPath)

执行 Shell 命令时路径和环境变量不对

常见现象:在资源管理器里双击进入子文件夹,但终端里 pwd 显示的仍是父目录;或者 npm run dev 报错说找不到命令——本质是终端没加载你的 shell 配置文件(如 ~/.zshrc),或 VS Code 启动时没读取系统 PATH。

解决方式取决于你的操作系统:

arcgis-js
arcgis-js

提供 ArcGIS Maps SDK for JavaScript 开发辅助,涵盖 2D/3D 地图视图、图层管理、数据可视化、空间分析等功能模块的参考和示例指导。

下载
  • macOS:在 ~/.zprofile 中设置 PATH,并确保 VS Code 是从终端用 code . 启动(而非桌面图标),否则 shell 环境不会继承
  • Windows:检查 terminal.integrated.profiles.windows 设置中是否指定了正确的 PowerShell 或 Command Prompt 路径;若用 Git Bash,需手动添加 profile 并设为默认
  • Linux:多数桌面环境能正确继承,但若用 Snap 安装的 VS Code,会因沙盒限制无法读取 ~/.bashrc,建议改用 .deb 或官网 tarball 版本
{
  "terminal.integrated.profiles.linux": {
    "bash": {
      "path": "/bin/bash",
      "args": ["-l"] // 加 -l 参数让 bash 以登录模式启动,加载 ~/.bashrc
    }
  },
  "terminal.integrated.defaultProfile.linux": "bash"
}

终端里运行脚本或命令没反应 / 卡住

不是 VS Code 的问题,而是 shell 进程本身被阻塞了:比如你运行了 node server.js,服务没加 --watch 或后台标志,终端就一直占用着,没法输下一条命令。

  • 用 Ctrl+C 中断当前前台进程(别用鼠标点关闭按钮)
  • 需要长期运行又不想占终端?加 & 后台运行:npm run dev &;更稳妥用 npx concurrently 或 nodemon --quiet
  • 想保留输出日志还方便查看?重定向到文件:npm test > test.log 2>&1
  • 终端编码异常(中文变问号)?检查 terminal.integrated.env.linux 是否设置了 LANG=en_US.UTF-8

为什么某些命令在终端可用,但在 tasks.json 里就失败

因为 tasks.json 默认使用非登录、非交互式 shell,不加载用户配置,PATH 更精简。例如全局安装的 pnpm 在终端里能用,但 task 里提示 command not found。

两个务实解法:

  • 显式写全路径:/home/username/.local/bin/pnpm install(用 which pnpm 查)
  • 在 task 配置里注入环境变量:
    {
      "version": "2.0.0",
      "tasks": [{
        "label": "install",
        "type": "shell",
        "command": "pnpm install",
        "options": {
          "env": {
            "PATH": "/home/username/.local/bin:/usr/local/bin:${env:PATH}"
          }
        }
      }]
    }

真正麻烦的是跨平台 task:Windows 的 %USERPROFILE% 和 macOS 的 $HOME 不通用,这时别硬拼 PATH,优先用 VS Code 提供的变量如 ${env:HOME} 或 ${env:USERPROFILE}。

热门AI工具

更多
WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

创客贴AI

创客贴AI是一款AI图像与设计工具,AI辅助的智能在线设计工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

AionClaw
AionClaw Hot

AionClaw是一款面向办公、创作和编程任务的AI桌面智能体。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

2195

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

3482

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

1156

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

3999

2025.09.10

js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

4596

2023.06.20

js获取当前时间
js获取当前时间

JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1395

2023.07.28

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

1818

2023.08.03

js是什么意思
js是什么意思

JS是JavaScript的缩写,它是一种广泛应用于网页开发的脚本语言。JavaScript是一种解释性的、基于对象和事件驱动的编程语言,通常用于为网页增加交互性和动态性。它可以在网页上实现复杂的功能和效果,如表单验证、页面元素操作、动画效果、数据交互等。

10143

2023.08.17

Vite 项目如何打包和部署
Vite 项目如何打包和部署

Vite项目打包部署专题汇集生产构建、产物预览、输出目录、资源路径、Nginx与GitHub Pages部署及常见白屏和路由404问题的已审核文章,帮助读者完成上线流程。

40

2026.10.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn