ReadLine 键绑定

bash、lftp、gdb 等都用 readline 的。
约定:

\C-a 表示 Ctrl+a
\M-a 表示 Meta+a Meta键在PC中通常为ALT键
A    表示 Shift+a
(下面括号中的\A代表Alt,\S代表Shift)

移动命令:

\C-a    移动到行首        Aheah
\C-e    移动到行末        End
\C-f    向前移动一个字符   Forward
\C-b    向后移动一个字符   Backward
\M-f    向前移动一个单词
\M-b    向后移动一个单词
\C-l    清空屏幕           cLear

\C-p    上翻,前一条命令    Previous
\C-n    下翻,后一条命令    Next

编辑命令:

\C-d       删除光标后的一个字符    \M-d         删除光标后的一个单词    Delete
\BackSpace 删除光标前的一个字符    \M-BackSpace 删除光标前的一个单词
\C-k       删除光标至行末的部分                                 Kill
\C-u       删除光标至行首的部分                                 Unix-line-discard
\C-w       删除光标前的一个单词                                 Word
\C-y       粘贴(最后删除的对象)                                 Yank
\C–       撤消

搜索历史纪录:

\C-r    连续使用 ‘C-r’ 可以查找下一个
\M-p
\M-n

补全:

\Tab    使用频率最高的功能!
\C-o    遍历补全 (未定义)
\M-?    M-=     列出所有可能选项,相当于按两次Tab键(M-? 实际按键为\A+\S+/)
\M-#    注释掉当前命令,用于将当前命令暂存于历史纪录列表(\A+\S+3)
\M-!    补全命令,通常用来补全子命令,例如 ’‘sudo’‘ 的子命令(\A+\S+1)
\M-~    补全用户名(\A+\S+’)
\M-@    补全主机名(\A+\S+2)
\M-$    补全变量(\A+\S+4)
\M-_    补全历史纪录中的纪录(\A+\S+-)
\M-*    将所有可能选项放到命令行中(\A+\S+8)

This entry was posted in GNU/Linux and tagged . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *