• 没啥好说,更新慢

如何在Windows环境下用Vscode开发Shell脚本

编程开发 每天学 来源:原创 7个月前 (03-06) 660次浏览

安装插件

shellman

在商店里面安装就可以了,这个是用来命令补全的

shell-format

用来格式化的,下好之后第一次运行会自动安装依赖,如图:

VSCODE自动下载shell-format所需要的依赖

如果没有自动下载,参考下面的方法:

前提:

  • shell-format依赖于 shfmt
  • shell-format会调用本地的 shfmt 可执行文件.
  • 如果要使用 shell-format, 必须要下载 shfmt
  • shfmt的各个版本在发行页

使用:

比如下载 shfmt_v3.0.0-beta1_windows_amd64 版本

把文件名重命名短一点, 然后放到 ‪D:\App\shfmt_v3.0.0.exe 目录下

从VSCode的商店安装 shell-format

打开配置文件 setting.json 添加如下配置:

"shellformat.path": "D:\\App\\shfmt_v3.0.0.exe",
"shellformat.flag": "-i=2 -sr -kp -ci"

shellformat.path 用来指定 shfmt 的路径

shellformat.flag 表示功能配置. 具体内容参考 shfmt

# like -i=4
indent_style = space
indent_size = 4
shell_variant = posix # like -ln=posix
binary_next_line = true # like -bn
switch_case_indent = true # like -ci
space_redirects = true # like -sr
keep_padding = true # like -kp

shellcheck

这一个安装稍微麻烦点,这是用来检查语法有没有错误的插件。

前提:

  • 已经配置下WSL子系统了
  • vscode-shellcheck 依赖于 shellcheck
  • 安装 shellcheck 可执行文件

使用:

必须已安装 WSL,方法可以百度,或者简单的说一下:

  • 在 控制面板 中找到 启用或关闭WIndows功能
  • 在列表的最下面找到 适用于 Linux 的 Windows 子系统, 在前面的 打勾 并 确定.
  • 电脑会提示重启.
  • 重启后, 在 应用商店 里搜索 Linux , 选择 Ubuntu 安装.
  • 添加用户, 设置密码. root密码可以用 sudo passwd root 来设置.

然后可以开始shellcheck的正式安装了

下载 shellcheck 的 Linux 版本, 放在D盘下面, 路径为: ‪D:\shellcheck-stable.linux.x86_64.tar.xz

从 开始 菜单打开 Ubuntu , 从 Windows 中复制到 Linux 中 /usr/local/bin

sudo cp /mnt/d/shellcheck-stable.linux.x86_64.tar.xz /usr/local/bin

首先要解压 shellcheck-stable.linux.x86_64.tar.xz

sudo xz -d shellcheck-stable.linux.x86_64.tar.xz
sudo tar -xvf shellcheck-stable.linux.x86_64.tar

解压后得到 shellcheck-stable 目录, 里面有三个文件

LICENSE.txt README.txt shellcheck

将 shellcheck 移动到 /usr/local/bin 目录下

cd /shellcheck-stable
mv shellcheck /usr/local/bin

最后从 VSCode 安装 shellcheck 的插件,然后修改配置文件 setting.json:

"shellcheck.enable": true,
"shellcheck.useWSL": true,

可以参考下我在Ubuntu子系统里面的安装截图:
Ubuntu子系统里面安装Shellcheck


每天学 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:如何在Windows环境下用Vscode开发Shell脚本
赞(2)
分享到: 更多 (0)

为了阻止垃圾和反动评论,您必须才能发表评论,使用功能只需要1分钟注册好账号!