一、说明

Ctrl – k: 先按住 Ctrl 键,然后再按 k 键;
Alt – k: 先按住 Alt 键,然后再按 k 键;
M – k:先单击 Esc 键,然后再按 k 键。

二、移动光标

Ctrl – a: 移到行首
Ctrl – e: 移到行尾
Ctrl – b: 往回(左)移动一个字符
Ctrl – f: 往后(右)移动一个字符
Alt – b: 往回(左)移动一个单词
Alt – f: 往后(右)移动一个单词
Ctrl – xx: 在命令行尾和光标之间移动

三、编辑命令

Ctrl – h: 删除光标左方位置的字符
Ctrl – d: 删除光标右方位置的字符(注意:当前命令行没有任何字符时,会注销系统或结束终端)
Ctrl – w: 由光标位置开始,往左删除单词。往行首删
Alt – d: 由光标位置开始,往右删除单词。往行尾删
Ctrl – k: 由光标所在位置开始,删除右方所有的字符,直到该行结束。
Ctrl – u: 由光标所在位置开始,删除左方所有的字符,直到该行开始。
Ctrl – y: 粘贴之前删除的内容到光标后。
Alt + t: 交换光标处和之前两个字符的位置。
Alt + .: 使用上一条命令的最后一个参数。
Ctrl – _: 回复之前的状态。撤销操作。
Ctrl -a + Ctrl -kCtrl -e + Ctrl -uCtrl -k + Ctrl -u 组合可删除整行。

四、Bang(!)命令

!!: 执行上一条命令。
foobar: 把上一条命令里的foo替换为bar,并执行。
!wget: 执行最近的以wget开头的命令。
!wget:p: 仅打印最近的以wget开头的命令,不执行。
!$: 上一条命令的最后一个参数, 与 Alt - . 和 $_ 相同。
!*: 上一条命令的所有参数
!*:p: 打印上一条命令是所有参数,也即 !*的内容。
^abc: 删除上一条命令中的abc。
foobar: 将上一条命令中的 foo 替换为 bar
foobar^: 将上一条命令中的 foo 替换为 bar
!-n: 执行前n条命令,执行上一条命令: !-1, 执行前5条命令的格式是: !-5

五、查找历史命令

Ctrl – p: 显示当前命令的上一条历史命令
Ctrl – n: 显示当前命令的下一条历史命令
Ctrl – r: 搜索历史命令,随着输入会显示历史命令中的一条匹配命令,Enter键执行匹配命令;ESC键在命令行显示而不执行匹配命令。
Ctrl – g: 从历史搜索模式(Ctrl – r)退出。

六、控制命令

Ctrl – l: 清除屏幕,然后,在最上面重新显示目前光标所在的这一行的内容。
Ctrl – o: 执行当前命令,并选择上一条命令。
Ctrl – s: 阻止屏幕输出
Ctrl – q: 允许屏幕输出
Ctrl – c: 终止命令
Ctrl – z: 挂起命令

七、重复执行操作动作

M – 操作次数 操作动作: 指定操作次数,重复执行指定的操作。

参考

linux 命令行 光标移动技巧