summaryrefslogtreecommitdiff
path: root/examples/obashdb/bashdb
blob: 97d287ddf456c87b2b22bab79b2fb8bedc6eb6e5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# kshdb - Korn Shell Debugger main file
# adapted from 'Learning the Korn Shell' by Bill Rosenblatt (O'Reilly)
# by Cigy Cyriac (cigy@felix.tulblr.unisys.com)
# Main driver: constructs full script (with preamble) and runs it

echo 'Bourne-Again Shell Debugger version 0.1'

_pname=${0##*/}

[ $# -eq 0 ] && {
	echo "${_pname}: usage: ${_pname} <script_file>"
	exit 1
}

_guineapig=$1

[ -r $_guineapig ] || {
	echo "${_pname}: cannot read $_guineapig." >&2
	exit 1
}
shift

_tmpdir=/tmp
_libdir=.
_dbgfile=$_tmpdir/bashdb$$		#temp file for script being debugged

cat $_libdir/bashdb.pre $_guineapig > $_dbgfile
if [ -f "$BASH" ]; then
	exec $BASH $_dbgfile $_guineapig $_tmpdir $_libdir "$@"
else
	exec bash $_dbgfile $_guineapig $_tmpdir $_libdir "$@"
fi
# end of bashdb