gdb.info: Command Files

Go forward to Output
Go backward to Hooks
Go up to Sequences
Go to the top op gdb

Command files

A command file for GDB is a file of lines that are GDB commands.
Comments (lines starting with `#') may also be included.  An empty line
in a command file does nothing; it does not mean to repeat the last
command, as it would from the terminal.
   When you start GDB, it automatically executes commands from its
"init files", normally called `.gdbinit'(1).  During startup, GDB does
the following:
  1. Reads the init file (if any) in your home directory(2).
  2. Processes command line options and operands.
  3. Reads the init file (if any) in the current working directory.
  4. Reads command files specified by the `-x' option.
   The init file in your home directory can set options (such as `set
complaints') that affect subsequent processing of command line options
and operands.  Init files are not executed if you use the `-nx' option
(*note Choosing modes: Mode Options.).
   On some configurations of GDB, the init file is known by a different
name (these are typically environments where a specialized form of GDB
may need to coexist with other forms, hence a different name for the
specialized version's init file).  These are the environments with
special init file names:
   * VxWorks (Wind River Systems real-time OS): `.vxgdbinit'
   * OS68K (Enea Data Systems real-time OS): `.os68gdbinit'
   * ES-1800 (Ericsson Telecom AB M68000 emulator): `.esgdbinit'
   You can also request the execution of a command file with the
`source' command:
`source FILENAME'
     Execute the command file FILENAME.
   The lines in a command file are executed sequentially.  They are not
printed as they are executed.  An error in any command terminates
execution of the command file and control is returned to the console.
   Commands that would ask for confirmation if used interactively
proceed without asking when used in a command file.  Many GDB commands
that normally print messages to say what they are doing omit the
messages when called from command files.
   GDB also accepts command input from standard input.  In this mode,
normal output goes to standard output and error output goes to standard
error.  Errors in a command file supplied on standard input do not
terminate execution of the command file -- execution continues with the
next command.
     gdb < cmds > log 2>&1
   (The syntax above will vary depending on the shell used.) This
example will execute commands from the file `cmds'. All output and
errors would be directed to `log'.

---------- Footnotes ----------

   (1) The DJGPP port of GDB uses the name `gdb.ini' instead, due to the
limitations of file names imposed by DOS filesystems.
   (2) On DOS/Windows systems, the home directory is the one pointed to
by the `HOME' environment variable.