在Windows下用VScode构造shell脚本的IDE
在linux系统中,大家可以很轻松的开发、调试shell脚本。但是,对于不熟悉linux系统
的小白或者想在Windows下开发shell脚本的人来说,这就有点不友好了。本篇文章就
教大家,在Windows上打造一个Shell IDE。
一、基础环境搭建
本次的主角是Visual Studio Code和Git,如果已经安装过可以跳过本节。
安装Visual Studio Code(VScode )
下载地址:https://code.visualstudio.com/Download
根据自己电脑的位数下载,建议大家选择System Installer进行系统级别的安装。

下载完双击文件,选择路径安装即可,安装过程中有一步需要注意:

①将“通过code 打开“操作添加到windows资源管理器文件上下文菜单
②将“通过code 打开”操作添加到windows资源管理器目录上下文菜单
说明:①②勾选上,可以对文件,目录点击鼠标右键,选择使用 VScode 打开。
③将code注册为受支持的文件类型的编辑器
说明:默认使用 VScode 打开诸如 txt,py 等文本类型的文件,一般建议不勾选。
④添加到PATH(重启后生效)
说明:这步骤默认的,勾选上,不用配置环境变量,可以直接使用。
安装Git
下载地址:https://git-scm.com/downloads

下载完成,双击文件选择路径安装即可,这里不再赘述。
二、为VScode安装插件
VScode的插件可以在Extensions中搜索然后进行安装,快捷键:Ctrl+Shift+x 。
shellman
shellman:提供智能提示和自动补全功能

由上图中的信息可以看出,安装了shellman后,相关的提示就有了。
shellcheck
shellcheck:提供语法检查的功能

安装了shellcheck后,写代码过程中出现了语法错误会自动提示。
shell-format
shell-format:提供代码格式化功能,快捷键:Alt+Shift+f
shell-format依赖于shfmt,在使用时会调用本地shfmt可执行文件。所以,我们要把依赖
文件下载到本地。
shfmt下载地址:https://github.com/mvdan/sh/releases
下载完成,在VScode中安装shell-format,然后打开配置文件 setting.json ,在文件末
尾添加如下配置:
"shellformat.path": "D:\\Plugin\\shfmt_v3.1.2.exe",
"shellformat.flag": "-i=2 -sr -kp -ci",
shellformat.path:用来指定shfmt的路径(要替换成自己的安装路径)
shellformat.flag:功能配置,具体请参考shfmt
Code Runner
Code Runner:提供代码运行功能

到此为止,我们需要的工具就组建起来了,大家也可以自己去插件官网探索一番。
Visual Studio Code插件官网:https://marketplace.visualstudio.com/
三、把工具畅快的用起来
辛辛苦苦忙了很久,到这一步是不是很激动,别着急,我们先把VScode重启一下。
重启完成后,我们来写一个简单的脚本:

等等,好像哪里不对,我们下载的git没有用上啊?
敲黑板:注意了,linux上脚本首行要声明bash解释器,Windows上也一样。不过,路径要
更改为我们刚刚安装git的路径,例如我这里 #!D:\git\bin\bash

我们可以看到脚本运行成功,初次构造这个工具,有些地方可能不完善,如果大家有
好的想法,欢迎留言或私信我。
在Windows下用VScode构造shell脚本的IDE的更多相关文章
- 在windows系统下用vscode构造shell脚本IDE
1.基础环境搭建 安装Visual Studio Code(VScode ) 下载地址:https://code.visualstudio.com/Download 下载完双击文件,选择路径安装即可, ...
- Windows下记事本编辑的Shell脚本放到Linux下执行出错,格式问题(/bin/bash^M: bad interpreter: 没有那个文件或目录)
错误: /bin/bash^M: bad interpreter: 没有那个文件或目录 解决方案: 运行脚本时出现了这样一个错误,打开之后并没有找到所谓的^M,查了之后才知道原来是文件格式的问题,也就 ...
- [日常] windows下使用vscode配合xebug调试php脚本
windows下使用vscode配合xebug调试php脚本 要下载有php_xebug.dll扩展的版本,最新版可能没有这个扩展,php7.3应该是有的,php7.3.4好像没有默认是不加载这个扩展 ...
- windows下用vscode写C++
[本文参考:https://www.cnblogs.com/zhuzhenwei918/p/9057289.html 和 https://www.zhihu.com/question/3031589 ...
- CentOS 下运维自动化 Shell 脚本之 expect
CentOS 下运维自动化 Shell脚本之expect 一.预备知识: 1.在 Terminal 中反斜杠,即 "" 代表转义符,或称逃脱符.("echo -e与pri ...
- linux系统下重启tomcat的shell脚本
linux系统下重启tomcat的shell脚本: #!/bin/shtomcat_home=/opt/apache-tomcat- #找到tomcat进程的id并kill掉 ps -ef |grep ...
- windows下perl的安装和脚本的运行
参考 1.windows下perl的安装和脚本的运行: 2.fddb测试fddb的评估方法: 3.gunplot5.2.4-download: 完
- Windows下的Objective-C集成开发环境(IDE)
Windows下的Objective-C集成开发环境(IDE) 分类: Objective-C2012-04-20 21:54 26631人阅读 评论(42) 收藏 举报 windowside编译器c ...
- windows下使用vscode编写运行以及调试C/C++
未经允许,禁止转载,唯一出处:tangming博客园 最后更新于2019年4月4日: 多次更新,内容较多,篇幅较大,但如果是喜欢visual stdio code这款编辑器的话建议仔细阅读,有疑问的地 ...
- Centos下使用php调用shell脚本
我们在实际项目中或许会遇到php调用shell脚本的需求.下面就用简单案例在Centos环境下实践 准备 查看php.ini中配置是否打开安全模式 //php.ini safe_mode = //这个 ...
随机推荐
- 没想到还有这种骚操作~如何使用Golang实现无头浏览器截图?
前言 在Web开发中,有时需要对网页进行截图,以便进行页面预览.测试等操作. 而使用无头浏览器来实现截图功能,可以避免手动操作的繁琐和不稳定性. 这篇文章将介绍:使用Golang进行无头浏览器的截图, ...
- 汉字编码新尝试:字理组字编码方案v0.0
↑对,这就是正片↑(同步自敝知乎专栏,不定期更新) 高清(确信)版:http://farter.cn/zzdm/latest.png 不用任何教程,试试对着表解码一下: 43 295 817 146 ...
- [xctf] 江苏工匠杯easyphp
[xctf] 江苏工匠杯easyphp 考点 PHP弱类型 一.题目 <?php highlight_file(__FILE__); $key1 = 0; $key2 = 0; $a = $_G ...
- Django自定义视图类及实现请求参数和返回参数加解密
django rest_framework中GenericAPIView配合拓展类mixin或者视图集viewset可以复用其代码,减少自己编写的代码量.下面我要实现自己的视图类,以减少代码量新建一个 ...
- [ARM 汇编]高级部分—性能优化与调试—3.4.1 性能分析与优化策略
性能优化是嵌入式系统开发中的一个重要环节,尤其是在资源受限的环境下.性能优化的目标是提高代码执行速度.降低功耗和减少内存占用.在本章节中,我们将讨论性能分析与优化策略,并通过实例来学习如何应用这些策略 ...
- mysql截取函数,拼接函数,大写函数例子
题目:这题目是牛客网sql题,因为牵扯到3个函数,都是自己没怎么用过的,所以记录一下. 答案:是别人的解题思路 可以看出在mysql中提供的函数可以供我们使用来操作字段,非常的方便
- php发起支付加密数据供获取订单状态使用
<?php//作者主页: https://www.bz80.comnamespace Index\Controller; class PayController extends BaseCont ...
- GC 分代回收算法
GC 分代回收算法 1.首先了解JVM堆内存是如何分配的. 年轻代内部 生成区 和 S0 S1 的比例 默认情况下是 8:1 :1 堆内存和永久代存储的内容有区别: 堆内存主要存储的是 : 对象, ...
- 详解Django请求与响应:深入理解Web Http交互的核心机制
本文深入探讨了 Django 中的请求与响应处理,从 Django 请求和响应的基础知识.生命周期,到 HttpRequest 和 HttpResponse 对象的详细介绍.同时,讨论了 Django ...
- Istio 入门(三):体验 Istio、微服务部署、可观测性
本教程已加入 Istio 系列:https://istio.whuanle.cn 目录 3,快速入门 书店微服务 预先准备 details 应用 ratings 应用 reviews v1/v2/v3 ...