---
title: "键盘快捷键"
description: "按意图记忆而不是背整张表：停下来、找上一条、改这一行、清屏与清空对话，四组键位覆盖终端里最常用的操作。"
updated: 2026-11-13
canonical: https://docai.cc/learn/keyboard-shortcuts-reference/
markdown_mirror: https://docai.cc/learn/keyboard-shortcuts-reference.md
---
## 按键是给手用的，不是拿来背的

它开始大段输出，你发现方向错了；提示词写到一半，你想整段重来；上周写过的要求，你想翻出来改两个字。这些瞬间，鼠标和滚动条都太慢。快捷键的价值不在齐全，而在于卡住时你能立刻想起按哪个。

下面按「你想干什么」分组，每组只留最常用的。终端和版本之间存在差异，遇到不一致时以自己机器上的实测为准。

先给一张总表，后面几节再解释容易混的地方。表里的「一次」「两次」指连续快速按，间隔拖长就会被识别成两次独立操作。

| 想做的事 | 按键 |
| --- | --- |
| 提交当前内容 | 回车 |
| 输入换行不提交 | Shift 加回车，或 Ctrl+J |
| 中断正在生成的回答 | Ctrl+C 一次，或 Esc |
| 清空未提交的草稿 | 连按两次 Esc |
| 退出整个工具 | 空输入框 Ctrl+D 两次，或 Ctrl+C 两次，或 /exit |
| 翻上一条、下一条 | 上方向键、下方向键 |
| 按关键词找旧输入 | Ctrl+R，再按一次找更早的匹配 |
| 清屏 | Ctrl+L |
| 清空对话 | /clear |
| 压缩历史 | /compact |
| 行首、行尾 | Ctrl+A、Ctrl+E |
| 按词移动 | Alt+B、Alt+F |
| 删一个词 | Ctrl+W（前）、Alt+D（后） |
| 删到行首或行尾 | Ctrl+U、Ctrl+K |
| 找回刚删的文字 | Ctrl+Y |
| 撤销行内编辑 | Ctrl+下划线 |
| 命令补全 | Tab |
| 挂起进程、拉回 | Ctrl+Z、fg |

## 想停下来

| 你的意图 | 按键 | 结果 |
|---|---|---|
| 打断正在生成的回答 | `Ctrl+C` 或 `Esc` | 停止当前操作，回到输入框 |
| 清掉还没发出去的草稿 | 连按两次 `Esc` | 输入框清空，草稿存进历史 |
| 退出整个工具 | 连按两次 `Ctrl+C`，或连按两次 `Ctrl+D`，或输入 `/exit` | 会话结束 |
| 把进程暂时放到后台 | `Ctrl+Z`，之后 `fg` 拉回 | 对话状态保留（仅 Unix 系） |

最容易混的是前两个：`Ctrl+C` 和 `Esc` 都能打断生成，只是侧重不同。`Ctrl+C` 中断当前操作；没有任务在跑时，第一下清空输入、第二下退出。`Esc` 打断本轮流式输出或关掉弹窗，已经做完的部分会保留；输入框里有草稿时，连按两次 `Esc` 才会清空，草稿还会存进历史，按上方向键能找回。`Ctrl+D` 是退出键：空输入框要连按两次（第二下在 800 毫秒内）才结束会话，有字时它删的是光标后的字符，不是清空整行。

`Ctrl+Z` 是 shell 的老习惯：临时想看别的，不用结束会话，挂起再拉回即可。这个键只在 macOS、Linux 和 WSL 里有效。

中断不等于退款。请求已经发出去、模型已经生成了一部分，这部分消耗照常计算；所以发现方向不对时要尽早停，不要等它写完十页再按。

### 启动与退出

进入对话有几种常用姿势：直接敲 claude 进交互界面；claude 加一段引号包住的文字，启动时就把第一句发出去；claude -c 接着上一个会话；claude --resume 加会话编号，跳到指定历史。参数名和可用性随版本调整，记不住就先敲 claude --help 看本机帮助。

退出推荐空输入框按 `Ctrl+D`，最干净，会话也会保存。连续两次 `Ctrl+C` 更直接，适合卡住时用；输入 /exit 或 /quit 则最不容易误触。三种方式都能走，差别只在顺手程度。

### 回到某条旧消息重来

输入框为空时，连按两次 `Esc` 会进入历史消息的选择状态，挑一条改完再提交，会话会从那条之后重新推进。这个功能适合「前面某句条件写漏了」的场景：不必从头开会话，改掉源头那一句即可。注意两点：一是不同版本对这个手势的响应不完全一样，第一次用先在无关紧要的对话里试；二是重跑之后，原来那条之后的内容会被新的结果替代，先确认没有需要保留的东西。

## 想找回上一条、改这一行

- 上下方向键：在历史输入里前后翻，翻到后可以直接改、直接发。
- `Ctrl+R`：历史很长时按关键词反向搜索，再按一次找更早的匹配，回车选中。

长对话里找上周写过的要求，比用方向键一条条翻快得多。历史里既有普通提问，也有斜杠命令，搜索时按内容里的关键词比按时间更有效。想系统地管理历史，那是另一节的内容。

`Ctrl+R` 进去之后，输入框上方会出现搜索提示。输入几个字，最近的匹配先跳出来；再按一次 `Ctrl+R` 继续往更早的记录找。看到想要的那条，直接回车会把它发出去；如果还想改一改，先按 Esc 退出搜索状态，内容会留在输入框里等你编辑。这两个出口差别很大，手快的人容易直接回车，把半成品又发了一遍。

翻出来之后，多半还要改。输入框基本沿用行编辑器的习惯：

- `Ctrl+A` / `Ctrl+E`：跳到行首 / 行尾。
- `Alt+B` / `Alt+F`：按词后退 / 前进。
- `Ctrl+W`：删到前一个空白，整段路径或参数会一起删掉。
- `Ctrl+U` / `Ctrl+K`：删到行首 / 删到行尾。
- `Ctrl+Y`：把刚删掉的那段文字找回来。

最后一条值得单独记：误删整行后别急着重打，先按它。`Ctrl+H` 是退格；`Ctrl+D` 有字时删光标后的字符，空输入框时才是退出，位置不同，行为完全不同。

还有几个不常被提到但很好用的键：`Ctrl+B` 和 `Ctrl+F` 等价于左右方向键，单手就能移动；`Ctrl+下划线` 撤销刚才的行内编辑，写长句时比整段重写快；`Alt+D` 从光标处删到下一个词尾，和 `Ctrl+W` 正好一前一后。

### 一条改稿的完整动作

假设你翻出一条旧提示词，想把它改成新任务：

1. 按上方向键调出那条记录。
2. 按 `Ctrl+A` 到行首，删掉开头的旧项目名，换成新的。
3. 按 `Ctrl+E` 到行尾，补一句「输出用表格」。
4. 中间有个词想换，按 `Alt+B` 往后退到词首，用 `Ctrl+W` 删掉，再输入新词。
5. 如果不小心把整行删了，按 `Ctrl+Y` 找回来。
6. 回车发送。

整套动作不用离开主键区，比用鼠标选中再改快得多。

## 别把清屏当成清空对话

这是新手最常踩的坑：

- `Ctrl+L` 只把屏幕擦干净，对话上下文还在，它仍然记得前面聊过什么。
- `/clear` 才是清空对话，之前的内容不再参考，适合换一个不相关的任务。
- `/compact` 把长历史压成摘要，保留要点、减少占用，适合同一任务还要接着做。

屏幕太乱就清屏，任务结束就清空，上下文快满还想继续就压缩。三件事对应三个动作，别混用。

什么时候该用哪一个，可以按任务边界判断：同一个项目里换一个小话题，屏幕花就按 `Ctrl+L`；彻底换项目、换代码库，用 `/clear`，避免旧约束渗进来；一个长任务做到一半、上下文快占满，用 `/compact` 把前面的结论留下。压缩之后的摘要可能丢掉细节，重要参数最好在压缩前另存一份。关于上下文占用的机制，可以看[上下文窗口](/concepts/context-window/)。

## 换行与补全

回车默认是发送。要写多行，Shift 加回车最顺手；终端不认这个组合时，`Ctrl+J` 在多数环境都能用，Alt 加回车也可以，实在不行就把整段放进文件输入。输入 `/` 时按 `Tab` 能补全斜杠命令，路径也能补全，记不住命令名时很有用。补全只负责省打字，不会替你确认命令的含义，选中后仍要扫一眼再回车。

终端对 Shift 加回车的支持差异很大：有的原生识别，有的需要先做一次终端配置，老的远程终端可能完全不认。写多行前先花十秒试一次，不行就换 `Ctrl+J`。完整的兼容性清单和备选写法，放在[多行输入](/learn/multi-line-input/)里讲。

粘贴也值得提前确认。Linux 和 Windows 终端多用 Ctrl+Shift+V，macOS 用 Cmd+V；粘贴多行内容时，现代终端会一次性送入，不会逐行提交。如果粘进去的内容被拆成好几条消息，说明括号粘贴没生效，先存成文件再读，别在键位上反复试。

## 多开与分工

一个人同时推进两件事，常见做法是开两个终端窗口，或者用 tmux 分屏：左边跑开发服务，右边跑对话，报错直接问。两个实例各有自己的会话，互不串上下文。配合代码仓库的多工作区功能，还能让两个实例分别在不同分支上干活。

需要并排看文件时，也可以在编辑器里开终端面板。注意每个实例都有自己的工作目录，别在 A 目录启动却以为改的是 B 目录。

tmux 的几个默认操作值得记住：前缀键加百分号做左右分屏，前缀键加引号做上下分屏，前缀键加方向键切换窗格，前缀键加 d 把整个会话放到后台，tmux a 加会话名重新接上。默认前缀是 Ctrl+B，正好和部分行编辑组合冲突，遇到按键被吞，连按两次前缀就能把这一下传给里面的程序。

并行的另一个前提是任务真的独立。两个实例同时改同一批文件，冲突还是要人来收拾；更稳的分法是按目录或分支拆开，各管一块。

## 常见故障：按了没反应，或反应不对

| 现象 | 为什么 | 怎么办 |
| --- | --- | --- |
| Shift 加回车直接发出去了 | 终端没把这个组合识别成换行 | 改用 Ctrl+J、反斜杠加回车，或文件输入 |
| 按 Ctrl+C 后还在输出 | 中断信号还没传到，或网络在缓冲 | 再按一次或按住不放；仍不行就等这一轮结束 |
| 方向键只能翻本次会话 | 历史写入方式与实例数量有关 | 确认是否开了多个实例；历史管理见命令历史一节 |
| Ctrl+D 没退出，反而少了一个字 | 输入框里有内容，它优先当删除键 | 先按 Ctrl+U 清空，再按 Ctrl+D |
| 连按两次 Esc 没进入历史选择 | 版本实现不同，或间隔太长 | 放慢节奏再试，或直接用上下方向键 |
| 粘贴的多行被逐条发送 | 终端未启用括号粘贴 | 存成文件用输入重定向，或先查终端设置 |
| 自定义组合键完全无效 | 工具本身不暴露键位配置 | 通过终端行编辑配置做映射，属非官方路径 |
| Ctrl+Z 没反应 | 当前是 Windows 原生环境 | 用新开窗口或标签页代替挂起 |

处理顺序建议固定下来：先确认输入框里有没有内容，再确认终端有没有截走组合键，最后才怀疑版本差异。顺序反了，会在重装和改配置上浪费很多时间。

## 边界：哪些情况别硬用快捷键

快捷键解决的是「手离开主键区」的损耗，不是所有场景都值得。写超过一屏的长提示词，终端里改起来始终别扭，直接进编辑器或存文件更合适；需要反复对比两版文本，图形界面的差异工具更直观；团队协作时，把提示词放进版本库比留在历史记录里可靠。

按键组合也会随版本和平台调整，遇到与本文不一致的地方，以你自己的终端为准。真正值得先练的只有四个：`Ctrl+C` 停、`Esc` 打断、`Ctrl+R` 找、`Ctrl+L` 清屏。剩下的等用到再查。多行输入是最值得接着练的一项，下一节专门讲：[多行输入](/learn/multi-line-input/)；想系统管理历史记录，看[命令历史](/learn/command-history/)；需要把进程放后台跑长任务，配合[后台 bash 命令](/learn/background-bash-commands/)一起用。
