次: Screen Size, 前: Editing, 上: Controlling GDB
デバッグ・セッション中にユーザが入力したコマンドをGDBに記録させることができるため、 ユーザは実際に何が実行されたかを確実に知ることができます。 以下のコマンドを使って、 GDBのコマンド・ヒストリ機能を管理します。
set history filename fnameGDBHISTFILEの値になりますが、
この変数が設定されていない場合には./.gdb_historyになります。
set history saveset history save onset history filenameコマンドで指定可能です。
デフォルトでは、
このオプションは使用不可の状態になっています。
set history save offset history size sizeHISTSIZEの値に設定されますが、
この変数が設定されていない場合は256になります。
ヒストリ展開機能により、 文字!には特別な意味が割り当てられます。
!は、
C言語における論理notの演算子でもあるので、
ヒストリ展開機能はデフォルトではoffになっています。
set history expansion onコマンドによってヒストリ展開を利用できるようにした場合には、
(!を式の中で論理notとして使うのであれば)
!の後ろに空白かタブを入れることによって、
それが展開されないようにする必要のある場合があります。
ヒストリ展開が有効になっている場合でも、
readlineのヒストリ機能は、
!=や!(という文字列を置き換えようとはしません。
ヒストリ展開を制御するコマンドには、 以下のようなものがあります。
set history expansion onset history expansionset history expansion offreadlineのコードには、
ヒストリ編集機能やヒストリ展開機能に関する、
より完全なドキュメントが付属しています。
gnu Emacsやviのことをよく知らない人は、
このドキュメントを読むとよいでしょう。
show historyshow history filenameshow history saveshow history sizeshow history expansionshow historyを実行すると、
4つのパラメータの状態がすべて表示されます。
show commandsshow commands nshow commands +