问题标签 [shellcheck]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
81 浏览

unix - make 看到的 PATH 与帐户的 .bashrc 配置的 PATH 不同

我想Makefile.

当我通过 安装 ShellCheck 时cabal install,它安装为~/.cabal/bin/shellcheck. 所以,我已经相应地配置了 Bash:

这使我能够shellcheck从 Bash 中的任何目录运行。但是,当我尝试从 Makefile 调用它时,make找不到shellcheck.

我认为 make 与PATH我的普通 Bash shell 不同。我怎样才能解决这个问题?

0 投票
1 回答
1350 浏览

shell - 从 RPM 规范文件中提取 shell 脚本以进行静态分析

我想在将在部署 RPM 的地方运行的规范文件中嵌入的脚本上运行ShellCheck 。我有 .spec 片段,例如,

除了挂钩,

有没有办法以编程方式提取这些 shell 片段来运行像 ShellCheck 这样的脚本分析工具?像也许rpmbuild --save-temps或像这样的一些概念?还是每个脚本都需要被已知文本绑定,以便我可以使用流工具(grep、、、awksed)?

我有大量我不想修改的规范文件。例如检查安全相关项目的脚本等,而无需解析规范文件。搜索bison + spec给出了错误的概念,我认为您需要解析 RPM 宏和许多其他机器;或者语法比我想象的更简单?

0 投票
1 回答
3187 浏览

bash - 这个错误是什么意思?(SC2129:考虑使用 { cmd1; cmd2; } >> 文件而不是单独的重定向。)

我正在编写一个脚本来为我的博客生成草稿。运行ShellCheck后,我不断看到此错误弹出。这是什么意思,有人可以提供一个例子吗?

SC2129: Consider using { cmd1; cmd2; } >> file instead of individual redirects.

另外,我不确定我需要做什么才能将值传递给帖子的 YAML 中$title的字段......"Title"

0 投票
2 回答
1187 浏览

bash - 使用 Bash find 遍历目录中的特定文件

Shellcheck 不喜欢我在 Bash 中的for过度find循环。

for f in $(find $src -maxdepth 1 -name '*.md'); do wc -w < "$f" >> $path/tmp.txt; done

相反,它建议:

我明白了大部分,但有些事情仍然不清楚。

第一行:什么是'' file

在第 6 行:< < (find). Are the <redirects中的空白区域像往常一样做什么?do如果是,重定向到块是什么意思?

有人可以帮忙解析一下吗?这是迭代目录中某种文件的正确方法吗?

0 投票
3 回答
2498 浏览

bash - 比较 Bash while 循环中的小数

在下面的代码中,ShellCheckwhile在子句中引发错误。

ShellCheck 说:

不支持小数,使用整数或 bc

我不太确定如何在while循环中使用 bc 。

如何比较while子句中的十进制数?有什么建议吗?

0 投票
2 回答
1527 浏览

bash - 如何调用 shellscript 语法检查器(由/使用 syntastic 和病原)?

当我处理 bash/sh 脚本时,病原体会启动并正确加载~/.vim/bundle/syntastic/syntax_checkers/sh/. 我:scriptnames在命令行模式下检查过。包括shellcheck.vim,checkbashism.vimbashate.vim

正确检测到启动 vim 会话filetype并加载相应的捆绑语法检查脚本。

但是句法如何调用/usr/bin/shellcheckor bashateor checkbashism?在~/.vimrc.

可以同时调用多个语法检查器吗?例如,可以shellcheck并肩bashate工作吗?谢谢。

0 投票
1 回答
619 浏览

vim - 调整语法检查器 shellcheck 的突出显示颜色(带有合成和病原体)

对我来说,shellcheck的突出显示颜色和消息区域(其中语法被标记为可疑并显示警告)都是错误的。

  • 是否可以修改使用的状态行主窗口突出显示颜色shellcheck

    我调查了一下,因为我syntax on~/.vimrc。我想我的主窗口的高亮配色方案是 vim 的默认设置,而不是syntax enable,它应该允许用户随后定义高亮配色方案。

    再挖一点,我发现自从syntastic安装以来,我在状态行中有以下内容~/.vimrc

    /li>

我不打算完全重新审视warningmsg高配色方案。相反,我想修改一些用于语法检查的颜色规则,所以每当我在 bash 或 C 或 Python 或其他任何语言中使用语法检查器时,我的终端窗口都不会打我的脸。

  • 我可以在终端的 vim 窗口中修改 syntastic 的消息显示区域的高度吗?它发现它太大了。理想情况下,我希望能够直接从我的 vim 会话中修改它以使其适应环境。如果不可能,只是永久地刮掉几条线就可以了。
0 投票
1 回答
1349 浏览

shell - printf 格式字符串中的变量插值与替换

如果将变量放入printf(1)格式字符串中, ShellCheck会发出警告。为什么?

是:

在某些方面不如:

0 投票
0 回答
62 浏览

php - 如何使用 PHP 创建 cURL 请求

所以我找到了这段代码:

这是完整的代码: https ://github.com/lollek/scripts-and-stuff/blob/master/bin/shellcheck

是否可以使用 php 发出相同的请求,如果可以,我该怎么做?我的意思是将我的代码($file)发送到 shellcheck.net/shellcheck.php 并从中获取请求。那么,有人知道吗?

@编辑

我发现了这样的事情:

但是我怎样才能把我的 $file 发送到这里呢?

@edit2

现在我正在尝试这样的事情:

但仍然没有:/

0 投票
1 回答
469 浏览

bash - 为什么&&和|| 优先于 -a 和 -o

在 bash 中编写if块时,shellcheck告诉我&&and||比使用-aand更受欢迎-o

为什么?它更快,还是只是为了使脚本看起来更干净的风格偏好?

我得到的具体信息是: