Contents|Index|Previous|Next

Command history

GDB can keep track of the commands you type during your debugging sessions, so that you can be certain of precisely what happened. Use the following commands to manage the GDB command history facility.

set history filename fname
Set the name of the GDB command history file to fname. This is the file where GDB reads an initial command history list, and where it writes the command history from this session when it exits. You can access this list through history expansion or through the history command editing characters listed in the following. This file defaults to the value of the environment variable GDBHISTFILE, or to ‘./.gdb_history’ if this variable is not set.

set history save

set history save on
Record command history in a file, whose name may be specified with the set history filename command. By default, this option is disabled.

set history save off
Stop recording command history in a file.

set history size size
Set the number of commands which GDB keeps in its history list. This defaults to the value of the environment variable HISTSIZE, or to 256 if this variable is not set.

History expansion assigns special meaning to the character, !.

Since ! is also the logical not operator in C, history expansion is off by default. If you decide to enable history expansion with the set history expansion on command, you may sometimes need to follow ! (when it is used as logical not, in an expression) with a space or a tab to prevent it from being expanded. The readline history facilities do not attempt substitution on the strings != and !(, even when history expansion is enabled.

The commands to control history expansion are the following.

set history expansion on

set history expansion
Enable history expansion. History expansion is off by default.

set history expansion off
Disable history expansion.

The readline code comes with more complete documentation of editing and history expansion features. Users unfamiliar with GNU Emacs or vi may wish to read it.

show history

show history filename

show history save

show history size

show history expansion
These commands display the state of the GDB history parameters. show history by itself displays all four states.

show commands
Display the last ten commands in the command history.

show commands n
Print ten commands centered on command number, n.

show commands +
Print ten commands just after the commands last printed.