bash shell的调试
bash --debugger script script-arguments...
习惯了vim,写bash shell也是用它,一般来说shell都比较精短,所以也没考虑什么提高效率的方法,今天无意中看见有人提到vim的一个编写bash的插件bash support,就下载了试试,果然强大。
下载后按说明安装,gvim test.sh打开就看到bash菜单下强大的功能了,大部分虽然我们都用不到,至少我用不到,有的语法看都没看到过,不过可以当参考手册用。。。。
接下来,我们需要调试功能,要安装bashdb,sudo apt-get install bashdb,然后装完后按照网上说法,bash support插件默认bash的调试设置路径和bashdb真正的安装目录不一致,建立一个链接就好了。
sai@sai-laptop:~$ whereis bashdb
bashdb: /usr/bin/bashdb /usr/share/bashdb /usr/share/man/man1/bashdb.1.gz
sai@sai-laptop:~$ sudo mkdir /usr/local/share/bashdb
sai@sai-laptop:~$ sudo ln -s /usr/share/bashdb/bashdb-main.inc /usr/local/share/bashdb/bashdb-main.inc
然后就OK了,随便写一个shell,F9开始调试。
一些常用的调试方法
run 运行
r 重启
w看附近的代码
. 列出当前运行到的代码
l m n 列出m到n行之间的代码
b n 在第n行设断点
L 列出所有断点
d n 删除第n行的断点
D 删除所有断点
W var 观察var
n 单步执行
s 单步执行,进入函数
p $var显示var,观察用,用得最多的命令
T 观察栈
skip 跳过要执行的命令
ret 执行完到函数返回
finish 执行到程序结束
a n cmd 在第n行执行cmd命令行为
A 取消所有添加的行为
q 退出调试