shell脚本调试方法
来源:互联网 发布:东软his源码 编辑:程序博客网 时间:2024/05/18 02:48
在编程过程中难免会出错,有的时候,调试程序比编写程序花费的时间还要多,shell程序同样如此。
shell程序的调试主要是利用bash命令解释程序的选择项。调用bash的形式是:
bash -选择项 shell程序文件名
几个常用的选择项是:
上面的所有选项也可以在shell程序内部用“set -选择项”的形式引用,而“set +选择项”则将禁止该选择项起作用。如果只想对程序的某一部分使用某些选择项时,则可以将该部分用上面两个语句包围起来。
当shell运行时,若遇到不存在或不可执行的命令、重定向失败或命令非正常结束等情况时,如果未经重新定向,该出错信息会打印在终端屏幕上,而shell程序仍将继续执行。要想在错误发生时迫使shell程序立即结束,可以使用“-e”选项将shell程序的执行立即终止。
shell程序的调试主要是利用bash命令解释程序的选择项。调用bash的形式是:
bash -选择项 shell程序文件名
几个常用的选择项是:
- -e:如果一个命令失败就立即退出
- -n:读入命令但是不执行它们
- -u:置换时把未设置的变量看作出错
- -v:当读入shell输入行时把它们显示出来
- -x:执行命令时把命令和它们的参数显示出来
上面的所有选项也可以在shell程序内部用“set -选择项”的形式引用,而“set +选择项”则将禁止该选择项起作用。如果只想对程序的某一部分使用某些选择项时,则可以将该部分用上面两个语句包围起来。
一、未置变量退出和立即退出
未置变量退出特性允许用户对所有变量进行检查,如果引用了一个未赋值的变量就终止shell程序的执行。shell通常允许未置变量的使用,在这种情况下,变量的值为空。如果设置了未置变量退出选择项,则一旦使用了未置变量就显示错误信息,并终止程序的运行。未置变量退出选择项为“-u”。当shell运行时,若遇到不存在或不可执行的命令、重定向失败或命令非正常结束等情况时,如果未经重新定向,该出错信息会打印在终端屏幕上,而shell程序仍将继续执行。要想在错误发生时迫使shell程序立即结束,可以使用“-e”选项将shell程序的执行立即终止。
二、shell程序的跟踪
调试shell程序的主要方法是利用shell命令解释程序的“-v”或“-x”选项来跟踪程序的执行。
“-v”选择项使shell在执行程序的过程中,把它读入的每一个命令行都显示出来,而“-x”选择项使shell在执行程序的过程中把它执行的每一个命令在行首用一个“+”加上命令名显示出来。并把每一个变量和该变量所取的值也显示出来,因此,它们的主要区别在于:在执行命令行之前无“-v”则打印出命令行的原始内容,而有“-v”则打印出经过替换后的命令行的内容。
除了使用shell的“-v”和“-x”选择项以外,还可以在shell程序内部采取一些辅助调试的措施。
例如,可以在shell程序的一些关键地方使用echo命令把必要的信息显示出来,它的作用相当于C语言中的printf语句,这样就可以知道程序运行到什么地方及程序目前的状态。
0 0
- shell脚本调试方法
- shell脚本调试方法
- shell 脚本调试方法
- shell脚本调试方法
- shell脚本调试方法
- SHELL脚本调试方法
- shell脚本调试方法
- Shell脚本调试方法
- shell脚本调试方法
- shell脚本调试方法
- shell脚本调试方法
- Linux shell 脚本调试方法
- Shell脚本的调试方法
- Shell脚本的调试方法
- Shell脚本调试方法 Shell脚本执行的过程
- linux/unix shell l脚本调试方法
- Shell—启用Shell脚本调试模式的方法
- shell脚本的多种执行方法及调试方法
- 虚拟机包 OVF和OVA的区别
- JavaProfile方法
- 朱刘算法——最小树形图
- 谷歌浏览器Google Chrome快捷键大全
- sql语句优化
- shell脚本调试方法
- error: unkown OS type hvm 解决方法
- debugging information cannot be found or does not match.binary was not built
- 云数据
- 从“点赞”想到的正能量营销
- js正则去掉字符串中空格和重复字符串
- innerText 使用
- Jquery读取.Net WebService Json数据
- 2014找工作总结-机会往往留给有准备的人