这是命令 shellcheck,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
shellcheck - Shell 脚本分析工具
概要
外壳检查 [配置...] FILES...
商品描述
ShellCheck 是一个用于 sh/bash 脚本的静态分析和 linting 工具。 它主要集中在
关于处理典型的初学者和中级语法错误和陷阱
shell 只是给出了一个神秘的错误信息或奇怪的行为,但它也报告了一些
更高级的问题,其中极端情况可能导致延迟故障。
ShellCheck 提供特定于 shell 的建议。 考虑这一行:
(( 面积 = 3.14*r*r ))
· 对于以#! 开头的脚本/ bin / sh的 (或使用 -s sh 时),ShellCheck 将警告
(( .. )) 不符合 POSIX(类似于 checkbashisms)。
· 对于以#! 开头的脚本/ bin / bash (或使用 -s bash),ShellCheck 会警告
不支持小数。
· 对于以#!/bin/ksh(或使用-s ksh)开头的脚本,ShellCheck 根本不会发出警告,
因为 ksh 在算术上下文中支持小数。
配置
-e CODE1[,CODE2...], --排除=CODE1[,CODE2...]
从报告中明确排除指定的代码。 随后的 -e 选项是
累积,但可以一次指定所有代码,逗号分隔为单个
论据。
-f FORMAT, --格式=FORMAT
指定shellcheck的输出格式,以标准格式打印其结果
输出。 随后的 -f 选项被忽略,见 FORMATS 了解更多信息。
-s 壳, --外壳=壳
指定 Bourne shell 方言。 有效值为 sh, 打坏 和 KSH。 默认是
使用文件的shebang,或 打坏 如果无法确定目标外壳。
-V 版本, - 版
打印版本并退出。
FORMATS
TTY 纯文本,人类可读的输出。 这是默认设置。
GCC GCC 兼容输出。 对支持编译和显示的编辑器很有用
语法错误。
例如,在 Vim 中, :set makeprg=shellcheck\ -f\ gcc\ % 将允许使用 :make
检查脚本,然后 :cnext 跳转到下一个错误。
: : : :
检查样式
Checkstyle 兼容的 XML 输出。 许多人直接或通过插件支持
IDE 和构建监控系统。
<错误
线='线'
列='列'
严重性='严重性'
消息='消息'
source='ShellCheck.SC####' />
...
...
JSON Json 是一种流行的序列化格式,更适合 Web 应用程序。
ShellCheck 的 json 是紧凑的,只包含最低限度的内容。
[
{
"file": "文件名",
“行”:行号,
“列”:列号,
"level": "severitylevel",
“代码”:错误代码,
"message": "警告信息"
},
...
]
指令
ShellCheck 指令可以在命令或命令之前指定为 shell 脚本中的注释
块:
# shellcheck 键=值 键=值
命令或结构
例如,要抑制 SC2035 关于使用 ./*.jpg:
# shellcheck 禁用=SC2035
回声“文件:”*.jpg
这里使用了一个 shell 括号组来抑制多行:
# shellcheck 禁用=SC2016
{
echo '修改 $PATH'
回声 'PATH=foo:$PATH' >> 在〜/ .bashrc
}
有效的键是:
关闭
为以下命令禁用逗号分隔的错误代码列表。 这
命令可以是像 echo foo 这样的简单命令,也可以是像 a
函数定义、子shell块或循环。
使用 onworks.net 服务在线使用 shellcheck