温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么用内置变量调试shell脚本

发布时间:2021-09-18 09:44:59 来源:亿速云 阅读:138 作者:chen 栏目:开发技术

本篇内容主要讲解“怎么用内置变量调试shell脚本”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用内置变量调试shell脚本”吧!

一般的shell脚本的调试基本都是echo 来处理遇到比较大的脚本的时候,就比较麻烦了,出了问题,还不是很好定位哪行代码出问题了。
其实shell内置的一些变量可以很好的解决这个问题:
$LINENO  $FUNCNAME $BASH_LINENO 这几个变量记录了脚本当前的执行位置,以及正在执行的函数。具体可以可以man 文档页。

实例代码:a.sh

代码如下:

#!/bin/bash
abc() {
echo "wo shi abc()"
echo  "func: $FUNCNAME  ln: $LINENO ln2:${BASH_LINENO[1]} brother: ${FUNCNAME[1]}"
}


b.sh:

代码如下:

#!/bin/bash
../a.sh
abc
cdf() {
abc
}



执行结果:
[root@node2 ~]# ./b.sh
[code]wo shi abc()
func: abc  ln: 5 ln2:0 brother: main
wo shi abc()func: abc  ln: 5 ln2:9 brother: cdf
我在b.sh 里写了cdf 函数调用 abc 函数 ,看到输出的差别了吧,我们可以利用这些参数打印出代码出错行的位置,以及代码出错时,是由哪个函数调用的。

到此,相信大家对“怎么用内置变量调试shell脚本”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI