GDBのコマンド・ファイルとは、 各行がGDBコマンドとなっているファイルのことです。 (行の先頭が#の) コメントも含めることができます。 コマンド・ファイル内の空行は何も実行しません。 それは、 端末上での実行の場合とは異なり、 最後に実行されたコマンドの繰り返しを意味しません。
GDBを起動すると、
自動的に初期化ファイルからコマンドを読み込んで実行します。
これは、
Unix上では.gdbinitという名前のファイルであり、
DOS/Windows上ではgdb.iniという名前のファイルです。
GDBは、
ユーザのホーム・ディレクトリに初期化ファイルがあればまずそれを読み込み、
続いてコマンンドライン・オプションとオペランドを処理した後、
カレントな作業ディレクトリに初期化ファイルがあればそれを読み込みます。
このように動くのは、
ユーザのホーム・ディレクトリに初期化ファイルを置くことで、
コマンドライン上のオプションやオペランドの処理に影響を与える
(set complaints
のような)
オプションを設定することができるようにするためです。
`-nx'オプションを使用すると、
初期化ファイルは実行されません。
see Choosing modes。
GDBのいくつかの構成では、 初期化ファイルは異なる名前で知られています (このような環境では、 特別な形式のGDBが他の形式のGDBと共存する必要があり、 そのために特別なバージョンのGDBの初期化ファイルには異なる名前が付けられます)。 特別な名前の初期化ファイルを持つ環境には、 以下のようなものがあります。
また、
source
コマンドによって、
コマンド・ファイルの実行を要求することもできます。
source
filenameコマンド・ファイルの各行は順番に実行されます。 コマンドの実行時に、 そのコマンドは表示されません。 どれか1つでもコマンドがエラーになると、 コマンド・ファイルの実行は停止されます。
対話的に使われている場合には確認を求めてくるようなコマンドも、 コマンド・ファイル内で使われている場合は確認を求めることなく処理を継続します。 通常は実行中の処理についてメッセージを表示するGDBコマンドの多くが、 コマンド・ファイルの中から呼び出されている場合にはメッセージを表示しません。