Bash - Caller - Stack Trace (Builtin command)

> Procedural Languages > Bash Shell and (Unix|Linux) Utilities (XCU)

1 - About

Caller is a builtin command that returns the context (localization) of any active subroutine call (a shell function or a script executed with the . or source builtins.

3 - Syntax

caller [expr] 
  • The current frame is frame 0.
  • The return value is 0 unless the shell is not executing a sub- routine call or expr does not correspond to a valid position in the call stack.
Advertising

3.1 - Without expr

Without expr, caller displays the line number and source filename of the current subroutine call.

3.2 - With expr

If a non-negative integer is supplied as expr, caller displays:

  • the line number,
  • subroutine name,
  • and source file corresponding to that position in the current execution call stack.

This extra information may be used, for example, to print a stack trace.