Em bash
, há um comando interno do shell chamado caller
cuja função é descrita a seguir pelo help
comando:
Return the context of the current subroutine call
Mas, o que é o contexto de uma chamada de sub-rotina? Você poderia explicar isso para não programadores e o que é bom saber disso?
Responder1
Retirado diretamente da bash
página de manual:
caller ... displays the line number and source filename of the current subroutine call.
Em termos simples, diz de onde você veio. Pense nisso como um conto de fadas, onde duas crianças exploram a floresta e deixam migalhas de pão ao longo do caminho que seguem. O caller
builtin aponta para a última trilha que eles deixaram cair para que possam voltar a ela. (ok, afinal as crianças são meio estúpidas). O uso repetido dessa ajuda interna leva você de volta ao comando que você realmente executou, que terminou com N níveis de profundidade nas chamadas de função.
É basicamente uma gravação das respostas para "em que função eu ocupava antes de chegar a esta?" em todos os níveis de chamada de função.