在 Bash 中检查语法
本文讨论了在不运行脚本的情况下检查 Bash 脚本是否存在语法问题的方法。
语法错误是由于代码中的某些语法或拼写错误造成的。 在其他编程语言的现代编译器中,编译器甚至在运行程序之前就会突出显示此类错误。
在 Bash 脚本中情况并非如此,因为 Bash 是一个命令行解释器。 因此,我们需要单独检查语法错误。
可以有不同的技术来检查语法问题,如下所示。
使用在线 ShellCheck 编辑器
有一个在线工具 Shell Check 可以检查脚本的语法错误。
在上图中,有两个独立的窗口。 一个是代码编辑器,下半部分通过指定行号显示代码中的错误和警告列表。
ShellCheck 编辑器对于初学者和专家级程序员来说是一个非常有用的工具,因为它会在执行代码之前检测代码中的小到高级问题。
使用 bash -n(noexec 模式)命令
您还可以将 -n 标志 (noexec) 与 bash 命令一起使用来检查脚本中的错误。
bash -n [script-name]
这将只读取脚本中的所有命令并检查错误而不运行它们。 如果命令中有错误,它会显示出来; 否则,不会显示任何输出。
例如,考虑以下脚本。
请注意
,我们错过了 if 语句的结束(即,使用 fi 而不是 if)。 所以,它会给出错误。
使用 sh 命令
另一个检查语法错误的命令是:
sh -n [script-name]
我们将为上一节中讨论的同一脚本运行命令并检查错误。
相关文章
在 Bash 中运行 find -exec 命令
发布时间:2024/03/14 浏览次数:127 分类:操作系统
-
本文将演示如何使用 find 命令的 -exec 参数来使用 find 命令定位文件中的任何文本。