无需运行脚本即可知道shell脚本是否包含语法错误

Ank*_*ani 21 scripts

我有一个包含很多条件的很长的 shell 脚本,我想知道脚本中是否有任何语法错误而不运行它。

由于解释了 shell 脚本,我认为这是不可能的,但是有没有办法通过使用一些技巧来知道。

Bod*_*odo 29

bash -n scriptname
Run Code Online (Sandbox Code Playgroud)

虽然,这将检查语法,而不是命令可用性。(如果脚本使用尚未安装的命令,则不会发出警告)

  • 除了 bash 的内置语法检查之外,您还可以使用 [shellcheck](http://www.shellcheck.net/) 来识别不太严重的问题和不良做法。 (3认同)

gir*_*ngo 5

我找到了一个在线工具来检查脚本的语法。除了检查脚本之外,还建议可能的更正以避免错误。

在线检查shell脚本