调试:
-n: 不会执行该脚本,仅查询脚本语法是否有问题,并给出错误提示。
-v: 在执行脚本时,先将脚本的内容输出到屏幕上然后执行脚本,如果有错误,也会给出错误;
-x:将执行的脚本内容及输出显示到屏幕上,这个是对调试很有用的参数。
set命令
可辅助脚本调试。以下是set命令常用的调试选项:
set-n 读命令但并不执行。
set-v 显示读取的所有行。
set-x 显示所有命令及其参数。
提示:
1)同bash命令参数功能。
2)开启调试功能通过set-x命令,而关闭调试功能通过set+x.
优点:和bash -x相比,set -x可以缩小调试的作用域。可以在脚本中直接调用需要调试的区域
shell 调试技巧小结:
- 要记得首先用dos2unix 对脚本格式化。
- 直接执行脚本根据报错来调试,有时报错不准确。
- sh -x调试整个脚本,显示执行过程(大海捞针困难).
- set -x和set +x调试部分脚本(脚本中设置)(南印度洋缩小调试范围)
- echo输出变量及相关内容,然后紧跟着exit退出,不执行后面程序的方式。跟踪脚本,对于逻辑错误比较好用。写法即echo $var;exit
- 最关键的是语法熟练,编码习惯,编程思想,将错误扼杀在萌芽之中,降低负担,提高效率。