有没有Haskell库可以解析任意Bash脚本?在Hackage上的初步搜索表明有一个名为“bash”的包用于编写脚本,但我没有看到任何用于解析脚本的东西。基本上,我刚刚接手了大量的Bash脚本,并希望对其进行一些代码分析。但第一阶段显然是能够解析这些内容。我个人不太了解Bash。 我想我可以坐下来浏览繁琐的man页以获取完整的BNF语法。(考虑到shell的漫长和向后兼容的历史,我想它非常复杂。)我只是想知道是否已经有别人替我完成了这项工作...
Language.Sh是一组用于解析和操作shell语法表达式的模块。这是一个更大项目shsh的一部分。请注意,API在我们达到1.0版本之前可能会有些不稳定。
sh
通常不是指向bash
的符号链接,尽管我相信在 OSX 和其他一些系统上是这样的。Debian 有一个名为checkbashisms
的工具非常好用。最常用的扩展是[[
。 - singpolyma