Bash

換行(轉義換行)操作的快捷方式

  • June 9, 2017

是否存在將行繼續操作綁定到 bash 中特定鍵的方式?

也就是說,改為按兩個鍵\Enter然後一個接一個地同時按兩個鍵,例如Alt+ Enter

取而代之的是:

$ echo one \``Enter

> two \``Enter

這樣做:

$ echo one,然後按Alt+ Enter= 獲取反斜杠和換行符

> two``Alt+ Enter- 獲取反斜杠和換行符等。

我查看了 readline 綁定並沒有找到這樣的操作。不會說,這個功能非常需要我:),只是很有趣。

我在Arch Linux wiki中找到了答案——它可以通過宏來完成:

bind '"\e\C-m":" \\\C-j"'

它將所需的功能綁定到Alt+EnterAlt++Ctrl組合m

然後它需要將此行添加到.bashrc文件中,並且此綁定將在重新啟動後起作用。

要查看可用的宏,請執行bind -s

$ bind -s
$ "\e\C-m": " \\\C-j"

您可以使用 bind 命令執行類似的操作

bind '"\e[24~":"\\\n"'

我使用F12是因為我不知道如何綁定 C-^M 我認為它不可能的 bcos 輸入是 CM 但你可以使用:

bind '"\C-m":"\\\n"'

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