透過按鍵綁定在背景啟動進程(在 Ctrl+Enter 上附加“& disown”)

透過按鍵綁定在背景啟動進程(在 Ctrl+Enter 上附加“& disown”)

假設我想從命令列開啟 Chrome、Sublime Idea 等,同時保持對終端的控制。

當您按下+或其他方便的組合時,有沒有辦法& disown在 Bash 中附加到命令?CtrlEnter

我嘗試為它們創建別名,例如alias subl='subl & disown',但是傳遞參數將不再起作用,並且必須為我想使用這種方式使用的所有程式編寫別名太麻煩了。一定有更聰明的方法。

答案1

從你的評論來看:

我添加了"\C-e": ' & disown\n'.inputrc,它做了我想要的Ctrl+ e。由於某種原因,它不能與 一起\n使用e

我認為\n這不是正確使用的字串,但有一個更大的問題:在控制臺Enter本身是\C-Mie Ctrl+ M,所以Ctrl+Enter是公正的Enter,你無法區分它們。

但是,您可以區分EnterMeta (aka Alt)+ Enter。將此行放入您的.inputrc

"\C-\M-M":' & disown\n'

並在您想使用它時按Meta (aka Alt)+ 。Enter

答案2

我了解到\rCtrl與+共享相同的 ASCII 代碼M,這意味著Ctrl+Enter相當於Ctrl+ Ctrl+ M。按Ctrl兩次沒有任何意義,因此如果沒有 xterm,則CtrlEnter不能在終端中一起使用翻譯

我設法通過添加+Ctrl來完成這個技巧。E"\C-E": ' & disown\n '.inputrc

相關內容