zoukankan      html  css  js  c++  java
  • 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,这样一来,不用任何其他选项就可以启用调试功能了。

  • 相关阅读:
    TortoiseGit
    申请成功
    web.xml文件中配置ShallowEtagHeaderFilter需注意的问题
    消息队列调研
    二阶段提交
    ACID CAP BASE介绍
    SQL NULL Values
    HTTPS原理
    ID生成器详解
    如何变得更聪明
  • 原文地址:https://www.cnblogs.com/Rohn/p/13269719.html
Copyright © 2011-2022 走看看