題:
改進的終端自動完成功能(類似於Matlab的功能)
perr0
2013-02-02 04:27:22 UTC
view on stackexchange narkive permalink

如果您曾經使用過Matlab,則可能已經註意到該程序中的命令窗口功能。我想知道是否可以在Mac Terminal中啟用相同的功能。

它的工作方式如下:假設您之前在此Terminal會話中使用了兩個命令。首先,您使用 cd〜,然後使用 ls -la

在每個* nix終端(包括Mac終端)中,如果您按向上箭頭,它將首先顯示 ls -la 命令,如果您單擊兩次,則顯示 cd〜命令。這很棒。但是,在Matlab中,如果您先輸入字母 c 然後點擊向上箭頭,它不會向您顯示 ls ,而是直接到 cd〜。當您有大命令和一長串以前使用的命令時,這可以節省很多時間。

有可能嗎?

六 答案:
Gerry
2013-02-02 04:40:56 UTC
view on stackexchange narkive permalink

在Bash shell中,您可以按 Control kbd> + R kbd>在歷史記錄中進行反向智能搜索。開始鍵入命令,shell將使用先前輸入的命令自動完成。

然後您可以按 Enter kbd>再次執行命令,使用向左或向右箭頭鍵編輯命令,或按住 Control kbd> + R kbd>來循環瀏覽其他可能的補全。

Reverse intelligent search

Lri
2013-02-02 19:30:19 UTC
view on stackexchange narkive permalink

將其另存為〜/ .inputrc:

 #使上下箭頭在與行“ \ e [A””開頭匹配的命令之間循環:history-search-backward “ \ e [B”:歷史搜索 

選項將為 \ e \ e [A 和control-p \ Cp 。您可以通過按Ctrl-v來查看其他鍵組合的轉義序列。

對於還沒有〜/ .inputrc的用戶,只需創建一個。
應該是公認的答案
“ \ e [A”:找不到命令
Mark Robinson
2013-02-02 05:16:54 UTC
view on stackexchange narkive permalink

您可以做的另一件事是鍵入,然後鍵入第一個字母,它將找到最新的字母。 IE: cd〜可以通過!c

訪問
Ɱark Ƭ
2013-02-02 04:45:42 UTC
view on stackexchange narkive permalink

這是外殼程序的功能。 Control-R會做您描述的事情,但是更改為更現代的外殼將為您帶來更多收益。看看Z-shell(zsh),雖然有一些學習曲線,但是它非常強大。

我想你是說Control-R。
Chris
2013-02-03 06:28:16 UTC
view on stackexchange narkive permalink

zsh將完全像您的示例一樣完成命令。除了將其用於外殼之外,您甚至不需要做任何其他事情。

possible
2013-02-02 06:14:20 UTC
view on stackexchange narkive permalink

將它們添加到您的.cshrc中(如果您使用的是tcsh)-

  bindkey -k up history-search-backward bindkey -k down history-search-forward  

然後提供〜/ .cshrc來獲取您描述的功能。

我不知道是否有.profile等效項。



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...