Shell脚本调试
Posted 老男孩Linux
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell脚本调试相关的知识,希望对你有一定的参考价值。
一
Shell脚本调试
目标
1、学习脚步开发规范
2、好的编码习惯
提示:
脚本不是你写的或者windows下开发的脚本,你检查脚本明明没有问题,但就是执行出现错误,要想到执行dos2unix格式化下。
好习惯:
每次写脚本都执行dos2unix格式化下。
[root@db02 ~]# dos2unix add.sh #==>使用dos2unix格式化 dos2unix: converting file add.sh to UNIX format ... [root@db02 ~]# cat -v add.sh
如果没有dos2unix这条命令,需要使用yum进行安装
[root@db02 ~]# rpm -ql dos2unix /usr/bin/dos2unix /usr/bin/mac2unix /usr/share/doc/dos2unix-3.1 /usr/share/doc/dos2unix-3.1/COPYRIGHT /usr/share/man/man1/dos2unix.1.gz /usr/share/man/man1/mac2unix.1.gz [root@db02 ~]# yum -y install dos2unix
使用bash命令参数调试
[root@db02 ~]# sh [-nvx] add.sh
参数:
-n:不会执行该脚本,仅查询脚本语法是否有问题,并给出错误提示。
-v:在执行脚本时,先将脚本的内容输出到屏幕上然后执行脚本,如果有错误也会给出错误提示
-x:将执行的脚本内容及输出显示屏幕上,这个是对调试很有用的参数。
使用set命令调试部分脚本内容
set命令可辅助脚本调试,以下是set命令常用的调试选项:
set -n 读命令但并不执行 set -v 显示读取的所有行 set -x 显示所有命令及其参数。
提示:
1)同bash命令参数功能
2)开启调试功能通过set -x命令,而关闭调试功能通过set +x
shell调试技巧小结
1)要记得首先用dos2unix 对脚本格式化
2)直接执行脚本根据报错来调试,有时报错不准确
3)sh -x 调试整个脚本,显示执行过程(大海捞针困难)
4)set -x和set +x 调试部分脚本(脚本中设置)
5)echo 输出变量及相关内容,然后紧跟着exit退出,不执行后面程序的,对于逻辑错误比较好用
6)最关键的是语法熟练,编码习惯,变成思想,将错误扼杀在萌芽之中,调试负担,提高效率。
设置vim编辑器自动添加作者信息
文章:
提示:(此处不是重点,不多说。百度很多。)
Shell帮助与资料推荐
http:
man bash
Unix Shell 范例精解(第4版)老男孩推荐
密码:3z0x
本账号提供免费教程发布,分享优秀技术知识。并介绍行业规范,推荐就业机会,提高技术学习能力,增强技术水平。同时推荐优秀技术文章,分享技术人员成功案例和方法。
Oldboyedu
以上是关于Shell脚本调试的主要内容,如果未能解决你的问题,请参考以下文章
用于确保在任何给定时间仅运行一个 shell 脚本的 shell 片段 [重复]