history

ReferenceTOPKeywords

コマンド名

history - ヒストリリストを操作します。

構文

history ?option? ?arg arg ...?

解説

historyコマンドはヒストリリストに記録された、最近実行されたコマ ンドに関するいくつかの操作の中の1つを行います。これら記録された各コマンドは" event"と呼ばれます。 historyコマンドにイベントを指定するとき、以下の形式が使えます。
[1]番号
正数なら、その番号のイベントを参照します(すべてのイベントが1から始まる番号が付けられています)。番号が負であれば、現在のイベントから相対的なイベントを選択します (-1は直前のイベントを参照して、-2はその1つ前、以下同 様)。イベント0は現在のイベントを参照します。
[2]文字列
この文字列がマッチするもっとも最近のイベントを参照します。文字列がイベントの始まりのいくつかの文字と同じであるか、string matchコマンドと同じ方法でマッチすると、文字列で指定されたイベ ントが見つかったとみなされます。

historyコマンドは次の形式のうちの何れかです。

history
history add command ?exec?
history change newValue ?event?
history clear
history event ?event?
history info ?count?
history keep ?count?
history nextid
history redo ?event?
history
後述するhistory info と同じ。
 
history add command  ?exec?
command 引数を新しいイベントとしてヒストリリストに加えます。exec(あるいは省略形)が指定された場合、そのコマンドが実行され、その実行結果 が返されます。 execが指定されない場合、結果として空文字列が返されます。
 
history change newValue ?event?
イベントに記録されている値がnewValueで置き換えられます。 event は置き換えられるイベントを指定します。デフォルトは(イベント-1ではなく)現在のイベントです。このコマン ドはヒストリ置換の新しい形式を実装し、現在のイベント(置換を呼び出す)を置換によって作成されたコマンドと置き換えることが必要な場合に使用されるコマンドです。戻り値は空文字列です。
 
history clear
ヒストリリストを消去します。現在のヒストリリストのサイズ(保存限界)は保存されます。 ヒストリイベント番号はリセットされます。
 
history event ?event ?
eventに与えられたイベントの値を返します。 eventのデフォルトは-1です。
 
history info ?count?
現在のイベントを除く、ヒストリリスト内の各イベントの番号と内容を、フォーマットされた文字列(人間が読めるもの)で返します。 countが指定される場合、もっとも最近のcount個のイベントのみが返されます。
 
history keep ?count?
このコマンドはヒストリリストのサイズをcountに変更します。初期値ではヒストリリストに20イベントが保存されています。 countが指定されない場合、現在のヒストリリストのサイズ(保存限界)が返されます。
 
history nextid
ヒストリリストに記録されるイベントの次のイベント番号を返します。これはコマンドラインプロンプトにイベント番号を表示するような場合に使えます。
 
history redo ?event ?
eventに示されるコマンドを再実行し、その結果を返します。 eventのディフォルトは-1です。このコマンドはヒストリ訂正になります。詳細は後述を参照してください。

ヒストリ訂正

8.0以前のTclは複雑なヒストリ訂正メカニズムを持っていました。現在のメカニズムはより限定され、古いヒストリ操作のsubstitutewordsは削除されました。 (代わりにclear操作が追加されました。)

ヒストリオプションredoはより簡単な"ヒストリの訂正"を提供します。このオプションが呼び出されると、直近のイベ ントが変更され、ヒストリコマンドを取除き、ヒストリコマンドの実行結果によってヒストリコマンドを置き換えるイベントになります。ヒストリを変更することなくイベントを再実行したい場合、イベントを受取るためにevent 操作を行い、そしてadd操作によってヒストリにそれを追加して実行します。

キーワード

event, history, record


Copyright © 1993 The Regents of the University of California. Copyright © 1994-1997 Sun Microsystems, Inc. Copyright © 1995-1997 Roger E. Critchlow Jr.