shell是Linux系统上常用的一种脚本语言。一般从事web后台开发的从业者,都会用到shell,因此shell调试也是一项必备的技能。本文教你如何进行shell脚本调试。

工具/原料

 
  • Linux操作系统
  • ssh工具(SecureCRT)

方法/步骤

 
  1.  

    启动Linux系统,用ssh工具(xshell或者SecureCRT等)连上Linux系统。我用的是SecureCRT,若SecureCRT不会用,可以自己百度或者留言沟通。用SecureCRT连上之后,如图所示。

  2.  

    shell脚本调试不需要什么特殊的工具。bash自带了一些调试选项。具体选项包含:

    -x :  在执行时显示参数和命令;

    +x:禁止调试

    -v:当命令行进行读取时显示输入;

    +v:禁止打印输入。

    在shell脚本启动时或者在脚本内都可以添加这些调试选项。测试脚本debug.sh,代码如图所示。

  3.  

    在脚本启动时添加调试选项。来调试debug.sh,可以在启动脚本时,输入以下命令:bash -x  ./debug.sh 或者  sh -x ./debug.sh。

  4.  

    在脚本内添加调试选项,使用set 命令。例如要开启-x选项,则在脚本内容中添加命令:set -x

    set +x 是关闭调试。

  5.  

    现在要看debug.sh脚本执行的调试信息,就不需要使用bash -x  ./debug.sh执行了。直接./debug.sh 就可以看到调试信息。

  6.  

    还有一种更便捷的方法,就是在脚本开头添加-xv选项,例如将#!/bin/sh 改成

    #!/bin/sh -xv

  7.  

    同样现在执行./debug.sh,也可打印出调试信息。

  8.  

    除了bash内置的选项来调试shell,还可以自定义调试函数。自定义调试函数可以更加灵活的应用。

  9. 9

    打开自定义调试函数,在启动脚本时,_DEBUG=on ./script。如果不开启调试开关,就直接执行./script。

最新文章

  1. 搭建maven项目
  2. gif显示
  3. jQuery的ajax问题
  4. js图文讲解
  5. JavaScript Array(数组)对象
  6. LinQ系列文章
  7. Commons-Beanutils包详解
  8. 使用MFC中的AfxBeginThread创建多线程
  9. eclipse引入jar类包的源代码
  10. 8 shell命令之find
  11. XCL-Charts绘画面积图(AreaChart) 案件1
  12. 从MSSQL server 2005中移植数据到Oracle 10g
  13. kmp//呵呵!看毛片算法
  14. UWP 使用OneDrive云存储2.x api(一)【全网首发】
  15. python中读取文件数据时要注意文件路径
  16. WinForm关于更新程序的设计思路
  17. JS 解决json字符串转换成json树形输出
  18. hihoCoder挑战赛28 题目2 : 二进制翻转
  19. Android Usb Camera HAL框架
  20. 命令行net time同步时间(内网)

热门文章

  1. robotframework安装和配置【转IBM:https://www.ibm.com/developerworks/cn/opensource/os-cn-robot-framework/index.html】
  2. mark一下。hadoop分布式系统搭建
  3. UVa10214 Trees in a Wood.
  4. linux fork()
  5. Python3:urllib模块的使用
  6. 【深入Java虚拟机】之三:类初始化
  7. 高性能JS-DOM
  8. 一张图搞清楚PMBOK所有过程的使用
  9. MapReduce编程实战之“调试”和"调优"
  10. weex 项目开发(一) weex create project 与 weex init project 的区别