背景:

OS:Ubuntu 16.04

Bash 的编辑模式:Emacs 模式

本文介绍的快捷键 仅当 您的 Bash 的编辑模式 为 Emacs 模式 时 有效,Bash 默认的编辑模式为 Emacs 模式 。若 您将 Bash 的编辑模式配置为了 vi 模式,请遵循 vi 模式的按键绑定。另外,您也可以通过 set -o emacs 命令将 Bash的编辑模式重新设置为 Emacs 模式。

正文:

生活在 Linux 世界中的您,如果 能够熟练使用一些 Bash Shell 命令相关的快捷键,必然 将 极大的提高 您的 工作效率 !

【基础命令】

Ctrl+Alt+T                 打开新的终端窗口

Shift+Ctrl+N              打开新的终端窗口

Shift+Ctrl+Q              关闭终端窗口

Shift+Ctrl+T              打开新的标签页

Shift+Ctrl+W             关闭标签页

Ctrl+PgUp/PgDn       左移右移标签页

Alt+数字                     切换至对应的标签页

Shift+PgUp/PgDn      终端上下翻页滚动

Shift+Ctrl+C              复制

Shift+Ctrl+V              粘贴

F11                全屏切换

【编辑命令】

Ctrl + a :          移到命令行首

Ctrl + e :          移到命令行尾

Ctrl + f :          按字符前移(右向)

Ctrl + b :         按字符后移(左向)

Alt + f :            按单词前移(右向)

Alt + b :           按单词后移(左向)

Ctrl + x:          在命令行首和光标之间跳转

Ctrl + u :         从光标处删除至命令行首

Ctrl + k :         从光标处删除至命令行尾

Ctrl + w :        从光标处删除至字首

Alt + d :           从光标处删除至字尾

Ctrl + d :         删除光标处的字符,当前行为空时,关闭当前terminal.

Ctrl + h :         删除光标前的字符

Ctrl + y :         粘贴至光标后

Alt + c :           从光标处更改为首字母大写的单词

Alt + u :          从光标处更改为全部大写的单词

Alt + l :           从光标处更改为全部小写的单词

Ctrl + t :         交换光标处和之前的字符

Alt + t :           交换光标处和之前的单词

Alt + Backspace:    与 Ctrl + w 类似

Ctrl+J                   等同于回车键

CTRL+M             等同于回车键

CTRL+O              等同于回车键

Ctrl + v -               插入非凡字符,如Ctrl v Tab加入Tab字符键

Ctrl + (x u) -         按住Ctrl的同时再先后按x和u,撤销刚才的操作

ctrl + 方向键左键        光标移动到前一个单词开头

ctrl + 方向键右键        光标移动到后一个单词结尾

【历史命令】

Ctrl + r:         逆向搜索命令历史

Alt + n –           Search the history forwards non-incremental

Alt + p –           Search the history backwards non-incremental

!?string?          执行含有string字符串的最新命令

Ctrl + g:        从历史搜索模式退出

Ctrl + p:        历史中的上一条命令

Ctrl + n:        历史中的下一条命令

Alt + .:           使用上一条命令的最后一个参数

【控制命令】

Ctrl + l:         清屏

Ctrl + o:        执行当前命令,并选择上一条命令

Ctrl + s:         阻止屏幕输出

Ctrl + q:        允许屏幕输出

Ctrl + c:        终止命令

Ctrl + z:        挂起命令,使用’ fg ‘命令恢复。

【Bang (!) 命令】

!!:                         执行上一条命令

!blah:                   执行最近的以 blah 开头的命令,如 !ls

!blah:p:               仅打印输出,而不执行

!$:                        上一条命令的最后一个参数,与 Alt + . 相同

!$:p:                     打印输出 !$ 的内容

!*:                        上一条命令的所有参数

!*:p:                     打印输出 !* 的内容

^blah:                  删除上一条命令中的 blah

^blah^foo:          将上一条命令中的 blah 替换为 foo,比较有用。

^blah^foo^:        将上一条命令中所有的 blah 都替换为 foo,比较有用。