Shell 脚本调试



Shell脚本调试

在Shell脚本开发中,经常碰到一些规范方面的问题,例如忘记使用引号、忘记在if语句末尾处加fi结束等。要注意把复杂的脚本简单化,要思路清晰,分段实现。当执行脚本时出现错误后,不要只看提示的错误行,而要观察整个相关的代码。
为了避免编写的脚本出错,除了在编写脚本时注意规范,排除语法错误,更重要的是利用调试脚本工具。echo命令是最有用的调试脚本工具之一,一般在可能出现问题的脚本中加入echo命令,采用分段排查方式
除了echo命令,bash shell也有相应参数可以调试脚本。


bash命令
·格式:sh [-nvx] 脚本名
·常用参数:
-n:不会执行该脚本,仅查询脚本语法是否有问题,如果没有语法问题就不显示任何内容,如果有问题会提示报错。
-v:在执行脚本时,先将脚本的内容输出到屏幕上然后执行脚本,如果有错误,也会给出错误提示。
-x:将执行的脚本内容输出到屏幕上,这个是对调试很有用的参数。

例:
我们选取一个脚本文件,按照上述三个选项看看效果
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述






set命令
当脚本文件较长时,可以使用set命令指定调试一段脚本。
·set -x :开启调节模式
·set +x :关闭调节模式
例:
在这里插入图片描述
在这里插入图片描述

这里以一段分数等级判断为例,可以看到三次输入不同分数,每次都会显示出判断过程。