[Contents]   [Back]   [Prev]   [Up]   [Next]   [Forward]  


ヒストリの対話的な使用

ここでは、 ユーザの見地に立って、 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
新しいコマンドを表示するだけで実行しません。


[Contents]   [Back]   [Prev]   [Up]   [Next]   [Forward]