Shell:调试脚本

编程

调试脚本所花费的时间常常比编写代码还要多。所有编程语言都应该实现的一个特性就是在出现始料未及的情况时,能够生成跟踪信息。调试信息可以帮你弄清楚是什么原因使得程序行为异常。

blog:https://www.cnblogs.com/Rohn

调试脚本所花费的时间常常比编写代码还要多。所有编程语言都应该实现的一个特性就是在出现始料未及的情况时,能够生成跟踪信息。调试信息可以帮你弄清楚是什么原因使得程序行为异常。

使用sh -x调试

运行带有sh -x选项的脚本可以打印出所执行的每一行命令以及当前状态。

sh -x script.sh

# 或者

bash -x script.sh

例如test.sh

#!/bin/bash 

for i in {103..109}; do

echo $i

done

执行sh -x test.sh

+ for i in "{103..109}"

+ echo 103

103

+ for i in "{103..109}"

+ echo 104

104

+ for i in "{103..109}"

+ echo 105

105

+ for i in "{103..109}"

+ echo 106

106

+ for i in "{103..109}"

+ echo 107

107

+ for i in "{103..109}"

+ echo 108

108

+ for i in "{103..109}"

+ echo 109

109

使用set 调试

调试脚本中部分代码,可以使用set命令。

set参数说明:

参数

说明

-x

在执行时显示参数和命令。

+x

禁止调试。

-v

当命令进行读取时显示输入。

+x

禁止打印输入。

配置shebang调试

把shebang从#!/bin/bash改成 #!/bin/bash -xv,这样一来,不用任何其他选项就可以启用调试功能了。

原文链接:https://www.cnblogs.com/Rohn/archive/2020/07/08/13269719.html

以上是 Shell:调试脚本 的全部内容, 来源链接: utcz.com/z/518177.html

回到顶部