claude -c 命令
继续最近的对话会话
概述
claude -c 命令允许您继续最近的对话会话。这在您意外关闭了 REPL 或想要继续之前的工作时非常有用。
命令语法
claude -c [选项]功能描述
-c(--continue)标志会加载当前目录中最近的对话会话,并启动 REPL。这允许您:
- 恢复意外中断的对话
- 继续之前的工作
- 保持对话上下文
- 避免重复之前的查询
使用示例
基本用法
claude -c结合初始查询
claude -c "继续优化这个函数"指定模型
claude -c --model claude-4-opus添加额外的工作目录
claude -c --add-dir ../tests使用场景
意外中断
# 意外关闭了 REPL
claude -c跨天工作
# 第二天继续前一天的工作
claude -c "继续昨天的任务"切换任务
# 完成一个任务后,开始另一个任务
claude -c "开始新任务"多项目工作
# 在项目 A 中工作
cd /path/to/project-a
claude -c
# 切换到项目 B
cd /path/to/project-b
claude -c会话保存机制
保存位置
| 类型 | 位置 |
|---|---|
| 本地会话 | 项目目录的 .claude/sessions/ |
| 用户会话 | 用户主目录的 .claude/sessions/ |
会话内容
保存的会话包含:
- 对话历史
- 上下文信息
- 工具调用记录
- 配置状态
- 文件访问记录
会话管理
查看可用会话
ls -la .claude/sessions/或使用交互式选择:
claude --resume清理旧会话
# 删除超过 7 天的会话
find .claude/sessions/ -mtime +7 -delete与其他恢复命令的对比
| 命令 | 恢复方式 | 选择性 | 适用场景 |
|---|---|---|---|
claude -c | 最近会话 | 否 | 快速继续最近的工作 |
claude --resume | 交互选择 | 是 | 选择特定会话恢复 |
claude -r "id" | 指定 ID | 是 | 精确恢复特定会话 |
实际应用示例
工作流恢复
#!/bin/bash
# 检查是否有最近的会话
if [ -d .claude/sessions/ ]; then
# 恢复最近的会话
claude -c "继续之前的工作"
else
# 启动新的会话
claude "开始新任务"
fi多项目管理
#!/bin/bash
# 项目列表
projects=("project-a" "project-b" "project-c")
# 选择项目
echo "选择项目:"
select project in "${projects[@]}"; do
cd "/path/to/$project"
claude -c "在 $project 中工作"
break
done常见问题
| 问题 | 答案 |
|---|---|
| 如何查看会话详细信息? | 查看会话目录中的文件,或使用 claude --resume 交互式选择 |
| 恢复的会话与原会话完全一样吗? | 基本一样,但某些临时状态可能无法完全恢复 |
| 可以恢复其他目录的会话吗? | 不可以,-c 只加载当前目录的会话,需切换目录或使用 -r |
| 会话占用多少磁盘空间? | 取决于对话长度,通常在几 KB 到几 MB 之间 |
最佳实践
- 结合版本控制:在 Git 提交前保存会话,将代码变更与会话状态同步记录
- 定期清理:删除超过 7 天的旧会话,避免磁盘空间浪费
- 项目隔离:每个项目保持独立的对话上下文