在VS Code中编写、运行和调试Shell脚本


首先安装Shell Script和Bash Debug插件,然后创建test.sh文件并编写脚本,通过集成终端或Code Runner运行,接着配置launch.json文件启用调试,设置断点后使用Bash Debug功能进行变量查看与单步执行,确保系统已安装bashdb工具以支持调试。

在vs code中编写、运行和调试shell脚本

在 VS Code 中编写、运行和调试 Shell 脚本是开发和运维人员常见的需求。借助合适的插件和配置,你可以获得高效的编辑体验、语法高亮、智能提示,甚至断点调试功能。

安装必要插件

打开 VS Code,进入扩展商店(快捷键 Ctrl+Shift+X),搜索并安装以下推荐插件:

  • Shell Script (by jeff-hykin):提供语法高亮、代码补全、错误检查和格式化支持。
  • Bash Debug (by rogalmic):用于调试 Bash 脚本,支持设置断点、变量查看等。

安装完成后,VS Code 就能识别 .sh 文件,并提供良好的编辑支持。

编写 Shell 脚本

新建一个文件,例如 test.sh,输入简单的脚本内容:

#!/bin/bash
echo "开始执行脚本"
name="World"
for i in {1..3}; do
  echo "Hello $name, 第 $i 次循环"
done
echo "脚本执行结束"

保存文件。你会看到语法高亮和括号匹配等编辑功能已生效。

运行 Shell 脚本

有几种方式可以在 VS Code 中运行脚本:

Shell脚本编写基础 中文WORD版 Shell脚本编写基础 中文WORD版

Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。它虽然不是Linux系统核心的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式协调各个程序的运行。因此,对于用户来说,shell是最重要的实用程序,深入了解和熟练掌握shell的特性极其使用方法,是用好Linux系统

Shell脚本编写基础 中文WORD版 24 查看详情 Shell脚本编写基础 中文WORD版
  • 使用集成终端:按下 Ctrl+` 打开终端,确保脚本有执行权限:
    chmod +x test.sh
    然后运行:
    ./test.sh
  • 使用 Code Runner 插件:安装 Code Runner 插件后,右键选择“Run Code”或按快捷键 Ctrl+Alt+N 直接运行脚本。

调试 Shell 脚本

要启用调试功能,需配合 Bash Debug 插件使用:

  1. 点击左侧活动栏的“运行和调试”图标(虫子形状)。
  2. 点击“创建 launch.json 文件”,选择“Bash Debug”。
  3. 选择“Launch file”模板,生成配置文件。

修改 .vscode/launch.json 内容如下:

{
  "version": "0.2.0",
  "configurations": [
    {
      "type": "bashdb",
      "request": "launch",
      "name": "调试 Bash 脚本",
      "program": "${file}",
      "cwd": "${workspaceFolder}"
    }
  ]
}

在代码左侧边距点击设置断点,然后点击“运行”按钮。调试控制台会启动,程序会在断点处暂停,你可以查看变量值、单步执行等。

基本上就这些。配置一次后,后续写 Shell 脚本就能享受完整的开发体验。不复杂但容易忽略细节,比如执行权限和调试器兼容性。确保系统已安装 bashdb 工具(Linux/macOS 通常可通过包管理器安装),否则调试无法启动。

以上就是在VS Code中编写、运行和调试Shell脚本的详细内容,更多请关注其它相关文章!


# 全攻略  # 新网站seo实战  # 桐乡seo排名优化  # 贵州遵义网站建设模板  # seo是如何挣钱的  # 橘子seo模板  # 沧州网站建设推广哪家好  # 深圳网站建设要多少钱  # 联雅seo怎么样  # 网站模板的优化方案有哪些  # 株洲网站建设方案优化  # 又是  # 程序设计语言  # 是一个  # 文件系统  # linux  # 自定义  # 就能  # 你可以  # 进阶  # cos  # shell脚本  # vs code  # 配置文件  # macos  # mac  # 工具  # json  # js  # vscode 


相关栏目: 【 Google疑问12 】 【 Facebook疑问10 】 【 优化推广96088 】 【 技术知识133117 】 【 IDC资讯59369 】 【 网络运营7196 】 【 IT资讯61894


相关推荐: 顺丰快递单号查询寄件人 顺丰寄件人查询入口  微博网页版访问入口 微博网页版网页端使用指南  快递查询,一键速查  秋风萧瑟洪波涌起中的萧瑟指的是什么  12306APP选座怎么选充电位置_12306APP带充电插座座位选择方法与技巧  sublime text 4如何安装_最新版sublime下载与汉化教程  sublime怎么在文件中显示代码结构大纲_sublime符号列表功能  如何在CSS中设置背景图像:一个全面指南  mysql归档数据怎么导出为csv_mysql归档数据导出为csv文件的方法  使用VS Code作为你的个人知识管理系统  word文档行距怎么调?word文档调行距的操作步骤  《偃武》甘宁技能详解  在J*a中如何实现在线问答与评分系统_问答评分项目开发方法说明  如何配置VS Code作为您Git操作的默认编辑器  厨房地面防滑垫的油污怎么洗? 机洗和手洗防滑垫的注意事项  Flexbox布局:实现粘性导航与底部页脚的完美结合  《植物大战僵尸3》火龙草作用介绍  实现可重用自定义Python Range类  《书耽》更换手机号方法  《环球网校》设置报考省市方法  《海底捞》点外卖方法  yy漫画官方网站登录入口_yy漫画在线阅读页面地址  《大润发优鲜》充值方法介绍  《随手记》启用语音备注方法  国际经济与贸易就业方向解析  OpenWeatherMap API:通过城市名称获取天气预报数据指南  《procreate》绘制渐变效果教程  广州地铁app准妈咪徽章领取方法  《tt语音》超级玩家开通方法  CodeIgniter 3 中基于 MySQL 数据高效生成动态图表教程  《飞猪旅行》购买汽车票方法  微信网页版在线登录 微信网页版在线使用入口  苹果11如何更换iCloud账号_苹果11账号切换的具体步骤  iPhone14无法连接蓝牙设备如何解决  电脑桌面图标怎么变大变小_Windows个性化设置第一课【新手入门】  C++怎么实现一个红黑树_C++高级数据结构与平衡二叉搜索树  抖音视频如何添加标题?添加标题有哪些好处?  如何修改Windows截图的默认保存位置_告别C盘让桌面更整洁【教程】  苹果电脑如何快速查看电池状态 苹果电脑电池信息快捷方法  使用Python和GBGB API高效抓取指定日期范围和赛道比赛结果教程  如何使用 Optional 类型并满足 Pylint 的类型检查  快递优选如何查优选物流_快递优选专属物流渠道查询与配送时效  PHP中动态类名访问的类实例类型提示与静态分析实践  J*aScript大数运算_BigInt使用指南  GBA模拟器手柄按键设置  J*aScript深度克隆:实现高效、健壮与安全的复杂对象复制  纯CSS实现自适应宽度与响应式布局的水平按钮组  《随手记》关闭首页消息推送方法  C++如何将字符串转换为大写或小写_C++ transform函数的使用技巧  Scipy Sparse CSR 矩阵非零元素行级遍历的最佳实践 

 2025-12-05

了解您产品搜索量及市场趋势,制定营销计划

同行竞争及网站分析保障您的广告效果

点击免费数据支持

提交您的需求,1小时内享受我们的专业解答。

运城市盐湖区信雨科技有限公司


运城市盐湖区信雨科技有限公司

运城市盐湖区信雨科技有限公司是一家深耕海外推广领域十年的专业服务商,作为谷歌推广与Facebook广告全球合作伙伴,聚焦外贸企业出海痛点,以数字化营销为核心,提供一站式海外营销解决方案。公司凭借十年行业沉淀与平台官方资源加持,打破传统外贸获客壁垒,助力企业高效开拓全球市场,成为中小企业出海的可靠合作伙伴。

 8156699

 13765294890

 8156699@qq.com

Notice

We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, for other purposes as specified in the cookie policy.
You can consent to the use of such technologies by closing this notice, by interacting with any link or button outside of this notice or by continuing to browse otherwise.