Bash
命令歷史中的命令行補全
所以,我查看了歷史和
Ctrl
+R
,但它們並不是我以為我知道的。有沒有一種方法可以讓我在命令的開頭鍵入,並使用一些 bash 快捷方式循環瀏覽歷史記錄中的匹配項?# mysq(some shortcut key)
給我:
# mysqldump --add-drop-table -e -q -n -C -u (some shortcut key) # mysql -u ben.dauphinee -p
按
Ctrl
+R
將打開反向歷史搜尋。現在開始輸入您的命令,這將給出第一個匹配項。通過再次(再一次)按Ctrl
+ ,您可以循環瀏覽歷史記錄。R
mysq(Ctrl+R)
會給:
mysqldump --add-drop-table -e -q -n -C -u
Ctrl
+R
再次:mysql -u ben.dauphinee -p
為了擴展 Gilles 所說的內容,我有以下內容
.inputrc
將向上/向下箭頭鍵綁定到history-search-backward
andhistory-search-forward
:# Key bindings, up/down arrow searches through history "\e[A": history-search-backward "\e[B": history-search-forward "\eOA": history-search-backward "\eOB": history-search-forward
只需鍵入一些內容(可選),然後按向上/向下箭頭鍵在歷史記錄中搜尋以您鍵入的內容開頭的命令。
要在
.bashrc
而不是中執行此操作.inputrc
,您可以使用:bind '"\e[A": history-search-backward'