2011-06-08, 11:51 PM | #1 | |
注册日期: 2003-10-22
帖子: 11,053
积分:6
精华:24
现金:14348金币
资产:29325305金币
|
[转]Ubuntu Shell学习笔记
在Ubuntu下用sh -x <script-name> 调试一个shell脚本,发现shell不支持下面这种for loop for (( expr1; expr2; expr3 ))上网搜索了以下,才发现Ubuntu默认的shell不是默认的bash,而是采用了dash,如下所示 fly@fly-laptop:~$ which sh /bin/sh fly@fly-laptop:~$ ls -l /bin/sh lrwxrwxrwx 1 root root 4 2010-07-06 04:50 /bin/sh -> dash 如果想将默认的shell改回bash,方法就是在终端执行 sudo dpkg-reconfigure dash,然后选择 no。 但是Ubuntu默认设置还是不做修改,改用 /bin/bash -x <script-name> 替代 不过有一点比较奇怪,如果直接用 ./<script-name> 运行shell脚本,发现不存在上述的问题,难道这样不是调用dash shell,confused. 另外还可以使用bashdb调试shell脚本,如果想用IDE,可以使用尝试ddd --debugger /usr/bin/bashdb <script-name> |
|
|
||
|