This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perl 1.0 patch 8: perl needed an eval operator and a symbolic debugger
[perl5.git] / perldb.man
1 .rn '' }`
2 ''' $Header: perldb.man,v 1.0.1.1 88/01/28 10:28:19 root Exp $
3 ''' 
4 ''' $Log:       perldb.man,v $
5 ''' Revision 1.0.1.1  88/01/28  10:28:19  root
6 ''' patch8: created this file.
7 ''' 
8 ''' 
9 .de Sh
10 .br
11 .ne 5
12 .PP
13 \fB\\$1\fR
14 .PP
15 ..
16 .de Sp
17 .if t .sp .5v
18 .if n .sp
19 ..
20 .de Ip
21 .br
22 .ie \\n.$>=3 .ne \\$3
23 .el .ne 3
24 .IP "\\$1" \\$2
25 ..
26 '''
27 '''     Set up \*(-- to give an unbreakable dash;
28 '''     string Tr holds user defined translation string.
29 '''     Bell System Logo is used as a dummy character.
30 '''
31 .tr \(bs-|\(bv\*(Tr
32 .ie n \{\
33 .ds -- \(bs-
34 .if (\n(.H=4u)&(1m=24u) .ds -- \(bs\h'-12u'\(bs\h'-12u'-\" diablo 10 pitch
35 .if (\n(.H=4u)&(1m=20u) .ds -- \(bs\h'-12u'\(bs\h'-8u'-\" diablo 12 pitch
36 .ds L" ""
37 .ds R" ""
38 .ds L' '
39 .ds R' '
40 'br\}
41 .el\{\
42 .ds -- \(em\|
43 .tr \*(Tr
44 .ds L" ``
45 .ds R" ''
46 .ds L' `
47 .ds R' '
48 'br\}
49 .TH PERLDB 1 LOCAL
50 .SH NAME
51 perldb - Perl Debugger
52 .SH SYNOPSIS
53 .B perldb [-o output] perlscript arguments
54 .SH DESCRIPTION
55 .I Perldb
56 is a symbolic debugger for
57 .I perl
58 scripts.
59 Run your script just as you normally would, only prepend \*(L"perldb\*(R" to
60 the command.
61 (On systems where #! doesn't work, put any perl switches into the #! line
62 anyway\*(--perldb will pass them off to perl when it runs the script.)
63 Perldb copies your script to a temporary file, instrumenting it in the process
64 and adding a debugging monitor.
65 It then executes the instrumented script for
66 you and stops at the first statement so you can set any breakpoints or actions
67 you desire.
68 .PP
69 There is only one switch: \-o, which tells perldb to put its temporary file
70 in the filename you specify, and to refrain from deleting the file.
71 Use this switch if you intend to rerun the instrumented script, or want to
72 look at it for some reason.
73 .PP
74 These are the debugging commands:
75 .Ip s 8
76 Single step.
77 Subsequent carriage returns will single step.
78 .Ip c 8
79 Continue.
80 Turns off single step mode and runs till the next break point.
81 Subsequent carriage returns will continue.
82 .Ip <CR> 8
83 Repeat last s or c.
84 .Ip "l min-max" 8
85 List lines in the indicated range.
86 .Ip "l line" 8
87 List indicated line.
88 .Ip l 8
89 List the whole program.
90 .Ip L 8
91 List breakpoints.
92 .Ip t 8
93 Toggle trace mode.
94 .Ip "b line" 8
95 Set breakpoint at indicated line.
96 .Ip "d line" 8
97 Delete breakpoint at indicated line.
98 .Ip d 8
99 Delete breakpoint at this line.
100 .Ip "a line command" 8
101 Set an action for indicated line.
102 The command must be a valid perl command, except that a missing trailing ;
103 will be supplied.
104 .Ip q 8
105 Quit.
106 .Ip command 8
107 Execute command as a perl statement.
108 A missing trailing ; will be supplied if necessary.
109 .SH ENVIRONMENT
110 No environment variables are used by perldb.
111 .SH AUTHOR
112 Larry Wall <lwall@jpl-devvax.Jpl.Nasa.Gov>
113 .SH FILES
114 /tmp/pdb$$      temporary file for instrumented script
115 .SH SEE ALSO
116 perl    
117 .SH DIAGNOSTICS
118 .SH BUGS
119 .rn }` ''