zoukankan      html  css  js  c++  java
  • 【1.3】shell基础——调试shell(sh -x)

    【1】使用sh命令

    (1)-n 只读取shell脚本,检测语法错误,但不实际执行
    (2)-x 进入跟踪方式,显示所执行的每一条命令
    (3)-c "string" 从strings中读取命令

    (4)-v 读取并打印出整个shell脚本,检测语法错误,但不实际执行

    “-n”可用于测试shell脚本是否存在语法错误,但不会实际执行命令。在shell脚本编写完成之后,实际执行之前,首先使用“-n”选项来测试脚本是否存在语法错误是一个很好的习惯。因为某些shell脚本在执行时会对系统环境产生影响,比如生成或移动文件等,如果在实际执行才发现语法错误,您不得不手工做一些系统环境的恢复工作才能继续测试这个脚本。

    “-c”选项使shell解释器从一个字符串中而不是从一个文件中读取并执行shell命令。当需要临时测试一小段脚本的执行结果时,可以使用这个选项,如下所示:
    sh -c 'a=1;b=2;let c=$a+$b;echo "c=$c"'

    "-x"选项可用来跟踪脚本的执行,是调试shell脚本的强有力工具。“-x”选项使shell在执行脚本的过程中把它实际执行的每一个命令行显示出来,并且在行首显示一个"+"号。 "+"号后面显示的是经过了变量替换之后的命令行的内容,有助于分析实际执行的是什么命令。 “-x”选项使用起来简单方便,可以轻松对付大多数的shell调试任务,应把其当作首选的调试手段。

    【2】调试最佳实践

    sh -n test.sh  #检测语法错误

    sh -x test.sh  #逐行跟踪打印查看运行轨迹

    shell调试参考:https://www.ibm.com/developerworks/cn/linux/l-cn-shell-debug/

    翻阅命令:https://www.runoob.com/linux/linux-shell-test.html

  • 相关阅读:
    2020 CCF CSP-J2(表达式)
    PSP总结报告
    第十三周例行报告
    对团队成员公开感谢博客
    作业要求 20181127-1 附加作业 软件工程原则的应用实例分析
    第十二周例行报告
    第十一周例行报告
    第十周例行报告
    第八周例行报告
    第七周例行报告
  • 原文地址:https://www.cnblogs.com/gered/p/12195093.html
Copyright © 2011-2022 走看看