history

顯示或操作歷史列表。

概要

1history [-c] [-d offset] [n]
2history -anrw [filename]
3history -ps arg [arg...]

主要用途

  • 顯示歷史列表。

  • 操作歷史列表。

選項

1-c           清空歷史列表。
2-d offset    根據offset刪除記錄。如果是正數則表示offset位置的記錄,如果爲負數則表示從結尾向前offset位置的記錄。
3-a           將當前終端的歷史記錄行添加到歷史記錄文件。
4-n           將尚未從歷史文件中讀取的歷史行追加到當前歷史列表中。
5-r           讀取歷史文件,並將其內容附加到歷史列表中。
6-w           將當前歷史記錄列表附加到歷史記錄文件中並且附加它們到歷史列表中。
7-p           在每個arg上執行歷史記錄擴展並在標準輸出上顯示結果,而不將結果存儲在歷史記錄列表中。
8-s           將每個arg作爲單個條目附加到歷史記錄列表。

參數

n:可選,只列出最近的n條記錄。

filename:可選,表示歷史文件;默認調用順序爲filename、環境變量HISTFILE~/.bash_history

返回值

返回成功,除非提供了非法選項或出現了錯誤。

例子

使用history命令顯示最近使用的 5 條歷史命令

1[root@localhost ~]# history 5
2   97  cd .ssh/
3   98  ls
4   99  cat known_hosts
5  100  exit
6  101  history 10

清空歷史記錄

1[root@localhost ~]# history -c

刪除制定的行

1[root@localhost ~]# history -d <指定行號>
2[root@localhost ~]# history -d 2243

快捷執行一條歷史命令

1# 執行第 n 條歷史命令
2[root@localhost ~]# !n
3
4# 執行最後一條 xxx 開頭的命令
5[root@localhost ~]# !xxx

注意

  1. 在命令行中,可以使用符號!執行指定序號的歷史命令。例如,要執行第2個歷史命令,則輸入!2
  2. 關閉終端後,歷史列表將被寫入歷史文件~/.bash_history
  3. 環境變量HISTSIZE決定了歷史文件中命令的存儲數量,默認存儲1000條。
  4. 環境變量HISTTIMEFORMAT如果是非空值,則使用其值作爲strftime(3)打印相關時間戳的格式字符串添加在每個顯示的歷史記錄之前;否則不會打印時間戳。
  5. 該命令是bash內建命令,相關的幫助信息請查看help命令。

來源:https://github.com/jaywcjlove/linux-command

最後修改於: Wednesday, January 31, 2024

相關文章:

翻譯: