转自:http://blog.dengjintian.com/bash-reference-card/
如果你在日常的开发中经常在终端中敲击命令,那么如何快速地在命令行下移动光标,进行删除操作呢?
Bash的命令行输入是基于Readline Library,readline 可以理解为一个编辑器,只是这个编辑器的编辑区域永远都只有一行:当前命令输入行。这个编辑器有两种模式 vim / Emacs模式,不同的模式区别在于快捷键的绑定不同。默认的是Emacs模式,快捷键的主要目的在于光标的快速移动/补全/历史搜索。 bash -o vi 启动vim模式下的bash,bash -o emacs 恢复emacs模式。
下面是我常用的光标移动快捷键(emacs模式),可以结合我的例子一起看:
- C+a :将光标移动到第一个字符
- C+e :将光标移动到最后一个字符后面
- C+f :将光标往“前”移动一个字符
- C+b :将光标往“后”移动一个字符
- M+f :将光标往“前”移动一个“单词”,这里的单词不包括空格,/等的分隔符
- M+b :将光标往“后”移动一个“单词”,这里的单词不包括空格,/等的分隔符
- C+l :清屏,将当前命令输入行移动到整个界面的最顶端
下图是我常用的删除操作快捷键,可以结合我给的例子一起看:
- C+k:删除从当前光标到行末的所有字符
- C+u:删除从当前光标到行首的所有字符
- M+Backspace:往“后”删除一个单词
- C+w:往“后”删除一个单词
- M+d:往“前”删除一个单词
我把bash常用的快捷键整理在一个文档里《bash reference card》,可以以a4纸横幅打印,欢迎大家补充!