在 中bash
,有一个名为 的 shell 内置命令,该命令caller
的功能描述如下help
:
Return the context of the current subroutine call
但是,子程序调用的上下文是什么?您能否向非程序员解释一下这一点以及了解它有什么好处?
答案1
直接取自bash
手册页:
caller ... displays the line number and source filename of the current subroutine call.
简单来说,它告诉你你刚刚从哪里来。可以把它想象成童话故事,两个孩子正在探索树林,并沿着他们所走的路留下面包屑。内置caller
功能将他们指向他们丢弃的最后一个面包屑,以便他们可以返回到它。 (好吧,孩子们毕竟有点傻)。重复使用这个内置的 cal 帮助会引导您回到实际运行的命令,最终进入函数调用的 N 层深度。
它基本上是对“在我到达这个功能之前我在执行什么功能?”的答案的记录。在函数调用的每个级别。