最常用终端快捷键是ctrl+a(跳行首)、ctrl+e(跳行尾)、ctrl+b/f(逐字符移动)、alt+b/f(逐单词移动)、ctrl+u/k/w(删除行首/行尾/左单词)及ctrl+y(粘贴),bash/zsh默认支持。

在终端输入命令时,用方向键逐字移动光标既慢又费眼。掌握几组核心快捷键,能大幅加快编辑效率——关键不是记全所有键,而是先用熟最常碰的那几个。
跳转到行首或行尾
这是最基础也最高频的操作:
- Ctrl + A:光标瞬间回到当前命令行开头(A 代表 Ahead)
- Ctrl + E:光标立刻跳到当前命令行末尾(E 代表 End)
注意:如果按了没反应,可能是你当前 Shell 处于 Vi 模式(比如执行过 set -o vi),这时需先按 Esc 进入命令模式,再按 ^(行首)或 $(行尾);也可能是终端拦截了组合键(如某些 IDE 内置终端把 Ctrl+A 当作全局快捷键),可换用系统终端验证。
按字符或单词移动光标
比方向键快得多,尤其适合微调:
- Ctrl + B / Ctrl + F:向左或向右移动一个字符(B = Backward,F = Forward)
- Alt + B / Alt + F:向左或向右跳转一个单词(以空格、标点等为分隔)
有些终端中 Alt 键可能显示为 Option(macOS)或需配合 Esc 使用(如 Esc + B 等效于 Alt + B)。
Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。它虽然不是Linux系统核心的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式协调各个程序的运行。因此,对于用户来说,shell是最重要的实用程序,深入了解和熟练掌握shell的特性极其使用方法,是用好Linux系统
快速删改局部内容
移动是为了修改,删改操作紧随其后才真正提效:
- Ctrl + U:删除从光标位置到行首的所有字符(含剪切功能,可用 Ctrl + Y 粘贴)
- Ctrl + K:删除从光标位置到行尾的所有字符
- Ctrl + W:从光标处往左删除一个单词(按空白或符号边界识别)
- Alt + D:从光标处往右删除一个单词
例如输入 git commit -m "fix bug",光标停在 bug 后,按 Ctrl + W 可删掉 bug,再按一次删掉 ",接着 Ctrl + A → Ctrl + K 就能清空整行重来。
其他实用辅助操作
这些不直接移动光标,但能减少重输、避免误操作:
-
Ctrl + L:清屏并把光标移到左上角(相当于运行
clear) - Ctrl + Y:粘贴最近一次被 Ctrl + U 或 Ctrl + K 剪切的内容
- Ctrl + R:反向搜索历史命令(输入关键词即可匹配)
- Ctrl + XX:在光标当前位置和行首之间来回跳转(适合长命令中快速定位起点)
这些快捷键在 bash 和 zsh 中默认生效(zsh 需确认未禁用 Emacs 键绑定),无需额外安装。每天刻意用几次 Ctrl+A/E/W/K,一两天就能形成肌肉记忆。










