Go to the first, previous, next, last section, table of contents.


ヒストリの対話的な使用

ここでは、 ユーザの見地に立って、 GNUヒストリ・ライブラリの対話的な使い方を説明します。

ヒストリの操作

ヒストリ・ライブラリは、 cshのヒストリ展開機能に似た機能を提供します。 以下において、 ヒストリ情報を操作するための構文を説明します。

ヒストリ展開は2つの部分から構成されます。 第1の部分で、 過去のヒストリのどの行が代替処理に使用されるかが決まります。 この行をイベントと呼びます。 第2の部分で、 この行のうちどの部分がカレント行に挿入されるかが決まります。 この部分のことをワードと呼びます。 GDBは、 Bashシェルと同様の方法によって行をワードに分割します。 したがって、 引用符によって囲まれた複数の英単語(あるいはUNIX用語)は1つのワードとみなされます。

イベント指定子

イベント指定子とは、 ヒストリ・リスト内のコマンド行エントリへの参照です。

!
ヒストリ代替を開始します。 ただし次に続く文字が、 空白、 タブ、 行末、 =(である場合は例外です。
!!
1つ前のコマンドを参照します。 これは、 !-1と同義です。
!n
コマンド行番号nのコマンド行を参照します。
!-n
n行前のコマンド行を参照します。
!string
コマンドの最初の部分が文字列stringで始まるコマンドのうち、 最後に実行されたものを参照します。
!?string[?]
文字列stringを含むコマンドのうち、 最後に実行されたものを参照します。

ワード指定子

コロン(:)が、 イベント指定子とワード指定子の区切り文字になります。 ワード指定子が^$*%で始まる場合は、 この区切り文字は省略することができます。 ワードは行の先頭から番号が付与され、 最初のワードは0(ゼロ)番になります。

0 (zero)
ゼロ番目のワードです。 多くのアプリケーションにおいて、 これはコマンド・ワードです。
n
n番目のワードです。
^
最初の引数、 すなわち1番目のワードです。
$
最後の引数です。
%
最後に実行された?string?検索にマッチしたワードです。
x-y
ある範囲のワードを指します。 -yは、 0-yの省略形です。
*
ゼロ番目のワードを除く、 すべてのワードです。 これは、 1-$と同義です。 イベントの内部にワードが1つしかなくても、 *の使用はエラーにはなりません。 この場合には、 空の文字列が返されます。

修飾子

必須ではないワード指定子に続けて、 以下の修飾子を1つ以上連続して追加することができます。 個々の修飾子の前にコロン(:)を付けます。

#
それまで入力されたコマンド行全体です。 これは、 1つ前のコマンドではなく、 カレントなコマンドを意味します。
h
パス名の末尾の部分を削除したヘッド部です。
r
`.'suffix形式の拡張子を削除したベース名です。
e
拡張子以外のすべての部分を削除します。
t
パス名の末尾の部分を残し、 それより前にある部分をすべて削除します。
p
新しいコマンドを表示するだけで実行しません。


Go to the first, previous, next, last section, table of contents.