diff --git a/gaboshlib/traceback.sh b/gaboshlib/traceback.sh new file mode 100644 index 0000000..22670cd --- /dev/null +++ b/gaboshlib/traceback.sh @@ -0,0 +1,11 @@ +function traceback { + local deptn=${#FUNCNAME[@]} + + for ((i=1; i<$deptn; i++)); do + local func="${FUNCNAME[$i]}" + local line="${BASH_LINENO[$((i-1))]}" + local src="${BASH_SOURCE[$((i-1))]}" + printf '%*s' $i '' # indent + echo "at: $func(), $src, line $line" + done +} \ No newline at end of file