跟踪时,类似于Java的bash函数

时间:2018-12-08 04:57:42

标签: bash debugging trace

bash中跟踪函数时,我可以从1 DEBUG处理程序返回非零值(例如,trap)以跳过下一个的执行线。

此外,我可以返回值2来执行return语句以返回该函数,而无需执行其余的函数体

但是,我希望能够退出当前功能,而不是通过“返回”,而是通过一次执行功能主体的其余部分来实现(而不是通过逐行执行直到正文结束。

这可能吗?

1 个答案:

答案 0 :(得分:0)

确实有点乏味,但是似乎可以使用Bash提供的现有调用堆栈信息来完成。

这是方法。

继续执行DEBUG陷阱处理程序,直到到达下一个调用堆栈帧F2,该帧位于当前帧F1的正下方,并停止在大于或等于{{1}的行号上}保存在F2中。要解决递归调用,需要'...等于'检查。