Bash

在 bash 中,如何執行最後一個包含字元串的命令?

  • December 15, 2020

我正在使用 bash shell。通常,如果我想重複以某個字元串開頭的最後一個命令,我可以執行

$ !cat

如果我想執行最後一個包含字元串的命令怎麼辦?也就是說,如果我輸入了一個命令

$ cat dave.txt

我想用“dave”執行最後一個命令,碰巧是上面的,有沒有允許這個的快捷方式?

使用?事件指示符:

!?dave

man bash

?細繩

$$ ? $$ 參考歷史列表中目前位置之前的最新命令,包含 string. 如果後面緊跟換行符,?則可以省略尾隨。string

但是我發現從歷史記錄中呼叫隨機命令很危險 - 如果我在不同的終端/目錄中並且我不小心刪除了一些東西怎麼辦?Ctrl + R更安全,更靈活。

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