history(3tcl)

NAME
history - 操縱歷史列表

總覽 SYNOPSIS
history ?option? ?arg arg ...?

描述 DESCRIPTION

history 命令完成與記錄在一個歷史列表中的最近執行過的命令有關的一些操作中的一個。每個記錄的命令被作為一個“事件”來參照。使用下列形式給 history 命令指定的一個事件:

[1] 一個數: 如果是正數，它用這個數來參照事件(所有事件多被從 1 開始計數)。如果是負數，它選擇相對當前事件的一個事件(-1 參照上一個事件，-2 參照大上一個，以此類推)。事件 0 參照當前事件。

[2] 一個字串: 選擇匹配這個字串的最新近的事件。在兩種情況下一個事件被考慮為匹配這個字串，要麼這個字串與這個命令的最前面的字元相同，要麼這個字串以與 string match 命令相同的方式匹配這個事件。

history 命令接受所有下列形式:

history
    同於下面描述的 history info。

history add command ?exec?
    把 command 引數作為一個新事件新增到歷史列表中。如果指定了 exec(或其縮寫) 則還執行這個命令並返回它的結果。如果沒有指定 exec 則返回一個空串作為結果。

history change newValue ?event?
    把給一個事件記錄的值替代(replace)為 newValue。 Event 指定要替代的事件，預設為當前 (current) 事件(不是事件 -1)。這個命令用在實現新形式的歷史替換(substitution)的命令中，和用在想用通過替換建立的命令替代當前事件(呼叫這個替換的事件)的命令中。 返回值是一個空串。

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。這個命令導致歷史修訂: 詳情見下面的段落。

歷史修訂 HISTORY REVISION

8.0 之前 的 Tcl 有一個複雜的歷史修訂機制。當前的機制受到了更多的限制，並且去除了老的歷史操作 substitute 和 words 。(作為安慰，添加了 clear 操作。)

歷史選項 redo 導致非常簡單的“歷史修訂”。在呼叫這個選項的時候，修改最新近的事件來淘汰歷史命令(的記錄)並用歷史命令的結果替換它。如果你打算重做一個事件而不修改歷史列表，則使用 event 操作來檢索某些事件，並使用 add 操作來向歷史列表新增它並執行它。

關鍵字 KEYWORDS
event, history, record

[中文版維護人]
寒蟬退士

[中文版最新更新]
2001/09/03

《中國 Linux 論壇 man 手冊頁翻譯計劃》:
http://cmpp.linuxforum.net

跋
本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃：https://github.com/man-pages-zh/manpages-zh