0

0

VSCode默认终端怎么设置_VSCode修改集成终端类型与参数教程

絕刀狂花

絕刀狂花

发布时间:2025-08-25 13:43:01

|

733人浏览过

|

来源于php中文网

原创

答案:通过修改settings.json中的terminal.integrated.profiles和terminal.integrated.defaultProfile,可将VSCode默认终端设为Git Bash、WSL等,支持自定义路径、参数及启动行为,提升开发效率。

vscode默认终端怎么设置_vscode修改集成终端类型与参数教程

VSCode的默认终端设置其实并不复杂,核心在于通过用户设置(

settings.json
)来定义你想要的终端配置文件,然后指定其中一个作为默认。这能让你在每次打开VSCode时,直接迎来你最习惯、最顺手的开发环境,省去了手动切换的麻烦。

解决方案

说起来,我刚开始用VSCode那会儿,每次打开终端都是PowerShell,虽然它功能强大,但我的开发习惯更偏向于Linux环境,比如用Git Bash或者WSL(Windows Subsystem for Linux)。每次手动点开下拉菜单切换,时间久了真是挺烦的。所以,把默认终端改成自己想要的,成了我提升工作流效率的第一步。

修改VSCode集成终端类型与参数主要通过编辑用户设置来实现,你可以通过两种方式进入设置:

  1. 图形界面 (UI):
    文件 (File) > 首选项 (Preferences) > 设置 (Settings)
    (或者
    Ctrl + ,
    ),然后搜索
    terminal.integrated.defaultProfile
    terminal.integrated.profiles
  2. 直接编辑
    settings.json
    :
    这是我个人更推荐的方式,因为它更直观,也方便复制粘贴和版本控制。在设置界面右上角有一个
    {}
    图标,点击即可打开
    settings.json
    文件。

settings.json
文件中,你需要关注两个主要的配置项:

  • terminal.integrated.profiles.windows
    (或
    osx
    ,
    linux
    ): 这个对象用来定义所有你希望VSCode能识别和使用的终端配置文件。每个键值对代表一个终端类型,键是它的显示名称,值是一个包含
    path
    (终端执行文件的路径)、
    args
    (启动参数)、
    icon
    (图标)等属性的对象。
  • terminal.integrated.defaultProfile.windows
    (或
    osx
    ,
    linux
    ): 这个设置则用来指定上述
    profiles
    中定义的哪一个作为默认启动的终端。你只需要把
    profiles
    中某个配置文件的名称(也就是那个键)填到这里就行。

具体操作步骤和示例:

假设你希望在Windows上将WSL Ubuntu作为默认终端,并且为Git Bash添加一些启动参数:

  1. 打开

    settings.json
    文件。

  2. 定义或修改终端配置文件:

    terminal.integrated.profiles.windows
    (如果你在Windows上) 下,添加或修改你的终端配置。如果已经有,直接修改即可;如果没有,需要手动添加。

    {
        // ... 其他设置 ...
    
        "terminal.integrated.profiles.windows": {
            "PowerShell": {
                "path": "PowerShell.exe",
                "icon": "terminal-powershell"
            },
            "Command Prompt": {
                "path": "cmd.exe",
                "icon": "terminal-cmd"
            },
            "Git Bash": {
                "path": "C:\Program Files\Git\bin\bash.exe", // 请根据你的Git安装路径调整
                "args": ["--login", "-i"], // 添加启动参数,确保加载所有用户配置
                "icon": "terminal-bash"
            },
            "WSL: Ubuntu": {
                "path": "C:\Windows\System32\wsl.exe",
                "args": ["-d", "Ubuntu"], // 指定启动Ubuntu发行版
                "icon": "terminal-wsl"
            },
            "Custom Zsh (WSL)": { // 比如你想在WSL里用Zsh
                "path": "C:\Windows\System32\wsl.exe",
                "args": ["-d", "Ubuntu", "zsh"], // 启动Ubuntu并直接进入zsh
                "icon": "terminal-wsl"
            }
        },
        "terminal.integrated.defaultProfile.windows": "WSL: Ubuntu" // 将WSL Ubuntu设置为默认终端
    }

    对于macOS或Linux用户,相应的配置项是

    terminal.integrated.profiles.osx
    terminal.integrated.profiles.linux
    ,以及
    terminal.integrated.defaultProfile.osx
    terminal.integrated.defaultProfile.linux
    。路径也需要对应调整,例如
    /bin/zsh
    /usr/local/bin/fish

    歌者PPT
    歌者PPT

    歌者PPT,AI 写 PPT 永久免费

    下载
  3. 保存

    settings.json
    文件。 保存后,VSCode通常会立即应用这些更改。你现在可以尝试打开一个新的集成终端 (
    Ctrl + 
    终端 > 新建终端
    ),它应该就是你刚刚设置的默认类型了。

VSCode集成终端支持哪些常见的Shell类型?如何配置它们?

VSCode的集成终端设计得非常灵活,它基本上可以支持你系统上安装的任何Shell,只要你能提供正确的执行路径。这给了我们极大的自由度,可以根据不同的开发需求切换终端环境。我个人觉得,理解每种Shell的特点和配置方式,是提高开发效率的关键。

Windows环境下常见的Shell类型及其配置:

  • PowerShell (默认,或PowerShell Core):
    • 特点: Windows系统原生,强大的脚本能力,与.NET生态系统紧密结合。
    • 配置示例:
      "PowerShell": {
          "path": "PowerShell.exe", // 系统自带的Windows PowerShell
          "icon": "terminal-powershell"
      },
      "PowerShell Core": {
          "path": "pwsh.exe", // 如果你安装了PowerShell Core
          "icon": "terminal-powershell"
      }
  • Command Prompt (CMD):
    • 特点: Windows传统命令行,虽然功能相对有限,但在某些老旧脚本或特定场景下仍会用到。
    • 配置示例:
      "Command Prompt": {
          "path": "cmd.exe",
          "icon": "terminal-cmd"
      }
  • Git Bash:
    • 特点: 随Git for Windows安装,提供了一套强大的Unix-like命令环境,对于习惯Linux命令的开发者来说是Windows上的福音。我个人在Windows上做Web开发时,几乎离不开它。
    • 配置示例:
      "Git Bash": {
          "path": "C:\Program Files\Git\bin\bash.exe", // 请务必检查你的Git安装路径
          "icon": "terminal-bash"
      }
  • WSL (Windows Subsystem for Linux):
    • 特点: 微软提供的Linux子系统,让你能在Windows上运行完整的Linux发行版,是进行跨平台开发或需要特定Linux工具时的理想选择。它几乎改变了我在Windows上的开发体验。
    • 配置示例:
      "WSL: Ubuntu": {
          "path": "C:\Windows\System32\wsl.exe",
          "args": ["-d", "Ubuntu"], // 启动名为"Ubuntu"的WSL发行版
          "icon": "terminal-wsl"
      },
      "WSL: Debian": {
          "path": "C:\Windows\System32\wsl.exe",
          "args": ["-d", "Debian"], // 启动名为"Debian"的WSL发行版
          "icon": "terminal-wsl"
      }

macOS/Linux环境下常见的Shell类型及其配置:

  • Bash:
    • 特点: 大多数Linux发行版和macOS的默认Shell,功能强大且普及。
    • 配置示例:
      "bash": {
          "path": "/bin/bash",
          "icon": "terminal-bash"
      }
  • Zsh:
    • 特点: Bash的增强版,通过Oh My Zsh等框架可以实现高度定制和丰富的功能,比如自动补全、主题美化等,是很多开发者的首选。
    • 配置示例:
      "zsh": {
          "path": "/bin/zsh",
          "icon": "terminal-zsh"
      }
  • Fish:
    • 特点: "Friendly Interactive SHell",专注于用户体验,自带语法高亮、自动建议等功能,开箱即用,非常适合新手。
    • 配置示例:
      "fish": {
          "path": "/usr/local/bin/fish", // 如果通过Homebrew安装在macOS上
          "icon": "terminal-fish"
      }

配置时,最关键的是

path
属性要指向你系统上实际的Shell可执行文件路径。如果路径不正确,VSCode会报错说找不到终端。

如何为VSCode集成终端添加自定义启动参数?有哪些实用场景?

为VSCode集成终端添加自定义启动参数(

args
)是一个非常实用的功能,它能让你在终端启动时自动执行一些命令或设置,从而省去重复的手动操作。我记得有一次,我需要在一个特定的WSL目录下启动终端,每次都
cd
进去太麻烦了,直到我发现
args
可以帮我解决这个问题,简直是“魔法的子弹”。

args
属性是一个字符串数组,数组中的每个元素都会作为命令行参数传递给Shell的执行文件。不同的Shell对参数的处理方式可能略有不同,但核心思想是一致的。

实用场景与示例:

  1. 指定WSL发行版并自动进入特定目录: 这是我最常用的一个场景。比如我有一个专门用于Web开发的WSL Ubuntu发行版,并且我希望终端一启动就进入我的项目根目录

    /mnt/c/dev/my-project

    "WSL: Ubuntu (Dev Project)": {
        "path": "C:\Windows\System32\wsl.exe",
        "args": ["-d", "Ubuntu", "bash", "-c", "cd /mnt/c/dev/my-project && exec bash"],
        "icon": "terminal-wsl"
    }
    • -d Ubuntu
      : 指定启动Ubuntu发行版。
    • bash -c "..."
      : 在Ubuntu中执行一个Bash命令。
    • cd /mnt/c/dev/my-project
      : 切换到指定目录。
    • exec bash
      : 执行一个新的Bash会话,这样你就可以在这个目录下继续操作了,而不是命令执行完就退出。
  2. 确保Git Bash加载完整的用户配置: 有时候,Git Bash在VSCode中启动时,可能不会像你在外部终端那样加载所有的

    .bashrc
    .bash_profile
    配置,导致一些自定义的别名或环境变量不生效。添加
    --login -i
    参数可以解决这个问题。

    "Git Bash (Login Shell)": {
        "path": "C:\Program Files\Git\bin\bash.exe",
        "args": ["--login", "-i"], // 以登录Shell和交互式Shell模式启动
        "icon": "terminal-bash"
    }
    • --login
      : 使Bash作为登录Shell启动,这通常会加载
      /etc/profile
      ~/.profile
      ~/.bash_profile
      等文件。
    • -i
      : 使Bash作为交互式Shell启动,这会加载
      ~/.bashrc
  3. 启动PowerShell并加载特定的配置文件: 如果你有自定义的PowerShell配置文件(

    profile.ps1
    ),并且希望VSCode启动时加载它,可以使用
    -NoExit
    -File
    -Command
    参数。

    "PowerShell (Custom Profile)": {
        "path": "PowerShell.exe",
        "args": ["-NoExit", "-Command", "Invoke-Expression -Command '& "C:\Users\YourUser\Documents\PowerShell\Microsoft.PowerShell_profile.ps1"'"],
        "icon": "terminal-powershell"
    }
    • -NoExit
      : 启动后不退出。
    • -Command "..."
      : 执行指定的PowerShell命令。
    • Invoke-Expression
      : 执行脚本。
  4. 直接在终端启动时执行特定程序或脚本: 比如,你可能希望终端一打开就自动启动一个Node.js REPL会话,或者一个Python解释器。

    "Python REPL": {
        "path": "python.exe", // 或 /usr/bin/python3
        "args": [], // 默认会进入REPL
        "icon": "terminal-python"
    },
    "Node REPL": {
        "path": "node.exe", // 或 /usr/local/bin/node
        "args": [], // 默认会进入REPL
        "icon": "terminal-node"
    }

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

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

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

457

2023.08.07

json是什么
json是什么

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

549

2023.08.23

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

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

337

2023.10.13

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

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

82

2025.09.10

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

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

760

2023.08.03

js截取字符串的方法
js截取字符串的方法

js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。

221

2023.09.04

java基础知识汇总
java基础知识汇总

java基础知识有Java的历史和特点、Java的开发环境、Java的基本数据类型、变量和常量、运算符和表达式、控制语句、数组和字符串等等知识点。想要知道更多关于java基础知识的朋友,请阅读本专题下面的的有关文章,欢迎大家来php中文网学习。

1567

2023.10.24

字符串介绍
字符串介绍

字符串是一种数据类型,它可以是任何文本,包括字母、数字、符号等。字符串可以由不同的字符组成,例如空格、标点符号、数字等。在编程中,字符串通常用引号括起来,如单引号、双引号或反引号。想了解更多字符串的相关内容,可以阅读本专题下面的文章。

651

2023.11.24

TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

26

2026.03.13

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
go语言零基础开发内容管理系统
go语言零基础开发内容管理系统

共34课时 | 2.7万人学习

第二十三期_前端开发
第二十三期_前端开发

共98课时 | 8.4万人学习

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

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号