Bash

如何從歷史記錄中的最後一個命令訪問第二個參數?

  • April 10, 2015

我開始學習一些正則表達式,因此我反複使用這個命令:

grep pattern /usr/share/dict/american-english 

只有模式發生變化的部分,所以我不得不一次又一次地編寫長表達式“ /usr/share/dict/american-english ”。

有人說,可以通過鍵入神秘字元組合而不是完整表達式來擴展命令歷史記錄中的命令參數。你能告訴我那些神秘的字元組合嗎?

您可以使用&lt;M-.&gt;(或者&lt;Esc&gt;.如果您的 Meta 鍵被用於其他用途),即 Meta-dot(或 <esc> 點),其中 Meta 通常是 Alt 鍵,以呼叫上一個命令的最後一個參數。所以,首先你會輸入

$ grep foo /usr/share/dict/american-english

然後如果你想用 grep 搜尋別的東西,你可以輸入

$ grep bar

輸入一個空格然後Esc``.(即先按退出鍵,然後按句點鍵):

$ grep bar /usr/share/dict/american-english

您還可以使用以下任一方法:

$ grep bar !:2
$ grep bar !$

其中!:2!$分別表示“第二個參數”和“最後一個參數”。

引用自:https://unix.stackexchange.com/questions/194406