CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
Claude Code 实战入门/课时/CLI 与会话
RawBlame
课时目录12 节

Claude Code 实战入门

  1. 01Claude Code 概览
  2. 02工作流与 Plan 模式
  3. 03CLI 与会话
  4. 04模型与定价
  5. 05上下文与 CLAUDE.md
  6. 06权限与安全
  7. 07MCP 与插件
  8. 08Skills 与子代理
  9. 09Hooks 事件
  10. 10扩展与规模化
  11. 11内置工具集
  12. 12综合练习

CLI 与会话

命令、快捷键与会话管理。

30 分钟

CLI 与会话

这一课你将能做到

  1. 熟练使用高频斜杠命令(/clear、/compact、/cost、/resume 等)管理会话与上下文
  2. 掌握 claude -p、-c、-r、--model 等命令行参数,把交互式任务变成脚本能力
  3. 用 #、!、@、Ctrl+R、双击 Esc 等快捷键完成快速记忆、直跑命令、引用文件与回退

为什么要学

同样用 Claude Code,有人一天要手敲几百字重复描述,有人一个 claude -c 接续昨天的现场。差距来自对 CLI 表面的熟悉程度:会话是它的「工作内存」,命令行参数是它的「遥控器」,斜杠命令是「仪表盘」。这层熟练度不改变模型智力,但直接决定你的操作成本,也是后续 headless、CI 集成(进阶课内容)的地基。

人话:会话像「游戏存档」,斜杠命令像「游戏菜单」,命令行参数像「启动参数」。存档管理好了,换地图、读进度、重开一局都不心疼。

先建立图像

一次完整的使用循环:

启动                          会话内
claude                       /help        查命令
claude "帮我看看构建脚本"      /clear       清空上下文
claude --model opus          /compact     压缩历史保留要点
claude -c   ← 接着上次继续     /cost        看本次花费
claude -r   ← 挑历史会话       /resume      会话内切换/挑历史
claude -p "..."  ← 不进界面直接出结果
claude --version / claude doctor

跟着做

步骤 1:摸清启动参数

claude                        # 交互模式
claude "解释 pom.xml 的依赖树"  # 带初始提问启动
claude -c                     # continue:恢复最近一次会话
claude -r                     # resume:列出历史会话挑选恢复
claude -p "统计 src 下 java 文件数"   # print/headless:输出结果即退出
claude -p "总结这个仓库" --output-format json
claude --model opus           # 指定模型启动(详见模型课)
claude --verbose              # 显示更完整的工具调用细节

步骤 2:会话内高频斜杠命令

逐个体验(输入 / 会弹出自动补全):

/help        所有命令一览,忘了就查
/clear       清空当前上下文,开新话题前用,能省大量 token
/compact     压缩历史对话,保留结论,上下文过大时用
/cost        查看当前会话的 token 用量与花费
/resume      在会话内切换到其他历史会话
/export      把当前对话导出为文件保存
/doctor      安装与配置体检,出问题先跑它
/terminal-setup 开启换行键支持(Shift+Enter 等)

步骤 3:四个前缀快捷键

在输入框的第一个字符决定行为:

# 记忆   输入 "# 项目统一用 pnpm,不要用 npm" → 弹出选择写入哪个 CLAUDE.md
! 命令   输入 "!git status" → 直接在本地执行,结果进入上下文(不经过模型)
@ 引用   输入 "@src/services/OrderService.java 这个类有什么问题"
         → 把该文件作为引用注入

步骤 4:编辑与回退快捷键

Esc           中断当前生成/工具执行
双击 Esc      打开回退菜单(checkpoint),恢复到之前的对话或代码状态
Ctrl+R        搜索历史会话内容,找回之前讨论过的结论
上下箭头      翻阅自己的输入历史
\ + 回车      输入多行

步骤 5:headless 初体验

claude -p "用一句话概括 src 目录的职责划分"
claude -p "列出所有 TODO 注释" --output-format text | sort | uniq -c

-p 执行完即退出、只吐结果,这是把 Claude Code 接进脚本和 CI 的入口(进阶课展开)。

讲清楚要点

  1. /clear 与 /compact 是成本开关:上下文越长,每轮输入 token 越多、响应越慢。换话题就 /clear;话题要继续但太长就 /compact。这是最实用的省钱手段。
  2. -c/-r 解决「会话丢了」:关终端、断网、误退出都不丢历史,会话持久化在本地。隔天继续用 -c,跨项目找旧讨论用 -r 或 Ctrl+R 搜索。
  3. ! 是你自己的手,工具是它的手:! 前缀命令由你直接执行并注入结果,适合「我知道确切命令」的场景;不写 ! 让它执行则走权限流程,适合「让它来」的场景。
  4. # 记的是长期约定,不是临时话:# 写入 CLAUDE.md 的是「以后所有会话都要遵守」的规则(如构建命令、代码风格),一次性要求直接说就行。
  5. checkpoint 回退 ≠ git 回滚:双击 Esc 回退的是「对话与文件改动状态」,是会话级的安全网;仓库级的安全网永远是 git,两者互补。

你可能会懵的地方

  • -c 和 -r 到底选哪个? -c 接「最近一次」,肌肉记忆按顺序用;-r 接「任意一次」,有列表挑选。拿不准就直接 -r,第一个通常就是刚才那个。

  • /compact 之后它「变笨了」怎么办? 压缩必然有信息损耗。补偿办法:压缩前让它把关键结论写进文件(方案文档、CLAUDE.md),或压缩后用一段话重述核心约束再继续。

  • ! 执行的命令结果模型能看到吗? 能。命令输出会注入上下文,模型后续可以基于它推理。这是「人跑命令给模型看」的高效协作方式。

  • headless 模式下权限确认谁来做? 无法交互确认,所以必须预先声明:用 --allowedTools 白名单放行安全工具,危险操作默认拒绝。细节在进阶课与权限课展开。

  • 命令太多记不住? 只需先记四个:/help(忘了就查)、/clear(省钱)、/cost(看账)、Esc(刹车)。其余用到再查,一周自然形成肌肉记忆。

错法对照

错法问题正解
一个会话从早聊到晚不清理上下文膨胀,变慢变贵还降智换话题 /clear,长话题 /compact
出错就关终端重开会话上下文与现场白丢Esc 纠偏,-c/-r 恢复
该它执行的命令你自己抢着做结果没进上下文,它还得问需要它看到结果时让它执行或用 ! 注入
用 # 存一次性需求CLAUDE.md 被垃圾信息污染长期约定才进 CLAUDE.md
headless 里期待弹窗确认无人交互,任务卡死或被拒预先 --allowedTools 白名单

卡点急救

  1. claude 命令异常、版本太旧:先 /doctor 或终端跑 claude doctor;升级用 claude update 或重新执行 npm 安装命令。
  2. 会话历史找不到:Ctrl+R 全文搜索关键词;仍找不到可能是切换了启动目录,会话按项目目录归档存储。
  3. 输出被截断/响应中断:Esc 后说「继续」,或把大任务拆小;频繁截断说明单步要求太重。

面试常问

  • headless 模式(-p)的典型用途? 非交互场景:脚本批量处理(对多个文件生成摘要)、CI 中自动 code review、定时任务、管道组合(与 grep/sort 等 Unix 工具串联)。关键是配好 --output-format 与工具白名单。

  • 为什么 /clear 能降低成本? 大模型按上下文总 token 计费,每轮请求都携带全部历史。历史越长,输入成本线性增长且延迟增加。清理不相关历史可减少无效 token,也降低模型被噪声干扰的概率。

  • 会话持久化与回退机制的意义? 把「试错」成本降到接近零:agent 工作本质是探索,可回退(checkpoint、会话恢复)让大胆尝试成为可能,配合 git 构成双层安全网。

自测三问

  1. /clear 和 /compact 分别适合什么场景?
  2. #、!、@ 三个前缀各自做什么?
  3. 如何恢复昨天中断的会话?如何搜索历史会话里的某段结论?

小结一句话

会话管理是 Claude Code 的「操作系统技能」:-c/-r 管存档、/clear 与 /compact 管内存、# ! @ 管输入效率、Esc 与双击 Esc 管刹车与倒车。

延伸

  • CLI 参考文档
  • 下一课:模型与定价——搞懂 Opus/Sonnet/Haiku 三档模型怎么选、订阅与 API 怎么算钱、如何主动控制成本。
加载本节练习…
← 上一课工作流与 Plan 模式下一课 →模型与定价