在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 = //这个 ...
随机推荐
- web自动化07-元素等待
元素等待 1.什么是元素等待? 在定位页面元素时如果没找到,会在指定时间内一直等待的过程 2.为什么需要元素等待 网络速度慢 电脑配置低 服务器处理请求慢 3.三种元素等 ...
- golang依赖注入工具digo
golang依赖注入工具 digo工具地址:https://github.com/werbenhu/digo 特性 使用注释中的注解 自动代码生成 自动检测循环依赖 编译时期依赖注入 自动初始化 支持 ...
- DASCTF二进制专项部分Writeup
easynote create:堆大小可以任意分配只要不超过0xFFF create() unsigned __int64 create() { int i; // [rsp+0h] [rbp-20 ...
- 【理论积累】Python中的Pandas库【一】
Pandas库介绍 Pandas 是一个用于数据分析的 Python 第三方库,能够处理和分析不同格式的数据,例如:CSV.Excel.SQL 数据库等.Pandas 提供了两种数据结构,分别为 Se ...
- k8s实战案例之部署redis单机和redis cluster
1.在k8s上部署redis单机 1.1.redis简介 redis是一款基于BSD协议,开源的非关系型数据库(nosql数据库),作者是意大利开发者Salvatore Sanfilippo在2009 ...
- 【IntelliJ】添加javaweb、tomcat语法支持
默认情况下:idea不支持javaweb的语法 但,我们的期望是: 解决方法:配置tomcat如下: (假设你已经配置好了tomcat)接下来: 1.打开[项目结构(快捷键:Ctrl + Shift ...
- 从n个不同元素中有放回的取出r个且不计顺序,有多少种不同的取法?
从n个不同元素中有放回的取出r个且不计顺序,有多少种不同的取法? 答案是:\(C_{n+r-1}^r\) 解析 因为是有放回地取出,所以同一个元素可能会被取多次,并且取出的元素是不计顺序的,那么如果我 ...
- 一次性掌握innodb引擎如何解决幻读和不可重复读
了解mysql的都知道,在mysql的RR(可重复)隔离级别下解决了幻读和不可重复.你知道RR下是怎么解决的吗,很多人会回答是通过MVCC和next-key解决的,具体是怎么解决的,今天来重点分析下. ...
- 5步带你玩转SpringBoot自定义自动配置那些知识点
目前SpringBoot框架真的深受广大开发者喜爱,毕竟它最大的特点就是:快速构建基于Spring的应用程序的框架,而且它提供了各种默认的功能和配置,可以让开发者快速搭建应用程序的基础结构. 但是,当 ...
- 如何取消Blazor Server烦人的重新连接?
如何取消Blazor Server烦人的重新连接? 相信很多Blazor的用户在开发内部系统上基本上都选择速度更快,加载更快的Blazor Server模式. 但是Blazor Server由于是Si ...