Claude Code CLI 参考文档

概述

Claude Code CLI 是一个强大的命令行工具,提供灵活的交互方式和全面的配置选项,支持交互式编程协助、脚本自动化和会话管理等多种使用场景。

基础命令

启动和查询

命令 描述 示例
claude 启动交互式 REPL 界面 claude
claude "查询内容" 启动 REPL 并带有初始提示 claude "帮我优化这个函数"
claude -p "查询内容" 通过 SDK 查询并退出 claude -p "解释这段代码的功能"
cat 文件 | claude -p "查询内容" 处理管道输入内容 cat app.js | claude -p "找出潜在的bug"

会话管理

命令 描述 示例
claude -c 继续最近的对话 claude -c
claude -r "<会话ID>" "查询" 恢复特定会话 claude -r "abc123" "继续之前的讨论"
claude update 更新到最新版本 claude update
claude mcp 配置模型上下文协议服务器 claude mcp

命令行选项

输入输出控制

--print / -p

功能: 输出响应而不进入交互模式

claude -p "分析这个错误日志"
--output-format

功能: 指定响应格式
选项: text, json, stream-json

claude -p "解释代码" --output-format json
--add-dir

功能: 添加额外的工作目录

claude --add-dir /path/to/project "分析项目结构"

模型和权限控制

--model

功能: 为当前会话设置模型

claude --model claude-3-opus "复杂的代码重构任务"
--permission-mode

功能: 在特定权限上下文中启动

claude --permission-mode restricted
--max-turns

功能: 限制代理交互轮数

claude --max-turns 5 "简单的编程问题"

调试和日志

--verbose

功能: 启用详细日志记录

claude --verbose "调试这个网络请求问题"

核心特性

1. 灵活的输入方式

管道输入支持
# 分析文件内容
cat error.log | claude -p "分析这个错误日志"

# 处理命令输出
git log --oneline | claude -p "总结最近的提交"

# 组合多个文件
cat *.js | claude -p "检查代码质量"
交互式和非交互式模式
# 交互式模式 - 持续对话
claude "我需要设计一个API"

# 非交互式模式 - 单次查询
claude -p "这段代码的时间复杂度是多少?"

2. 会话管理

自动会话保存
  • 每次交互自动保存会话历史
  • 支持会话恢复和继续
  • 保持上下文连续性
会话恢复功能
# 继续最近的对话
claude -c

# 恢复特定会话
claude -r "session-id-12345" "基于之前的讨论继续"

3. 高级配置

输出格式控制
# 文本格式(默认)
claude -p "解释算法" --output-format text

# JSON格式(适合脚本处理)
claude -p "生成配置" --output-format json

# 流式JSON(实时输出)
claude -p "长文档分析" --output-format stream-json
权限模式设置
# 受限权限模式
claude --permission-mode restricted

# 标准权限模式
claude --permission-mode standard

# 扩展权限模式
claude --permission-mode extended

使用场景和最佳实践

1. 交互式编程协助

# 启动交互式会话
claude

# 在会话中可以:
# - 讨论代码设计
# - 实时调试问题
# - 迭代优化方案
# - 学习新技术

最佳实践:

  • 使用清晰的问题描述
  • 提供充足的上下文信息
  • 利用会话历史进行深入讨论

2. 脚本和自动化

#!/bin/bash
# 自动化代码审查脚本

for file in *.py; do
    echo "审查文件: $file"
    cat "$file" | claude -p "审查这个Python文件,提供改进建议" --output-format json
done

最佳实践:

  • 使用 -p 标志进行非交互式查询
  • 选择合适的输出格式便于处理
  • 结合shell脚本实现批量处理

3. 上下文对话延续

# 第一次对话
claude "帮我设计一个用户认证系统"

# 稍后继续讨论
claude -c "基于刚才的设计,如何处理密码重置?"

最佳实践:

  • 使用 -c 快速继续最近对话
  • -r 恢复特定主题的会话
  • 保持对话的逻辑连贯性

4. 详细调试和分析

# 启用详细日志进行问题排查
claude --verbose --add-dir /project/src "分析这个性能问题"

最佳实践:

  • 使用 --verbose 查看详细执行过程
  • --add-dir 提供完整项目上下文
  • 结合具体错误信息进行分析

高级用法示例

项目分析工作流

# 1. 初始项目分析
claude --add-dir /path/to/project "分析项目架构"

# 2. 特定文件深度分析
cat src/main.js | claude -p "详细分析这个主文件"

# 3. 继续讨论优化方案
claude -c "基于分析结果,提供重构建议"

批量文档处理

# 处理多个配置文件
for config in config/*.yaml; do
    cat "$config" | claude -p "验证配置文件格式" --output-format json >> validation_results.json
done

集成开发工作流

# Git提交前的代码审查
git diff --cached | claude -p "审查即将提交的代码变更"

# 测试失败分析
npm test 2>&1 | claude -p "分析测试失败原因"

配置和自定义

环境变量

可通过环境变量自定义默认行为:

export CLAUDE_MODEL="claude-3-sonnet"
export CLAUDE_PERMISSION_MODE="standard"
export CLAUDE_OUTPUT_FORMAT="text"

配置文件

Claude Code 支持配置文件来设置默认选项和偏好设置。

故障排除

常见问题

  1. 会话恢复失败

    # 检查会话列表
    claude --list-sessions
    
    # 使用详细模式查看错误
    claude --verbose -r "session-id"
    
  2. 权限问题

    # 使用受限模式
    claude --permission-mode restricted
    
  3. 输出格式问题

    # 明确指定输出格式
    claude -p "query" --output-format text
    

调试技巧

  • 使用 --verbose 查看详细执行日志
  • 检查网络连接和API访问权限
  • 验证输入文件的编码和格式
  • 使用简单查询测试基本功能

总结

Claude Code CLI 提供了强大而灵活的命令行界面,支持:

  • 多种交互模式: 交互式REPL、非交互式查询、管道输入
  • 完整会话管理: 自动保存、会话恢复、历史管理
  • 灵活配置选项: 模型选择、权限控制、输出格式
  • 开发者友好: 详细日志、脚本支持、自动化集成

无论是日常的编程协助、自动化脚本还是复杂的项目分析,Claude Code CLI 都能提供高效的解决方案。通过合理使用各种命令选项和最佳实践,可以显著提升开发效率和代码质量。

Logo

这里是“一人公司”的成长家园。我们提供从产品曝光、技术变现到法律财税的全栈内容,并连接云服务、办公空间等稀缺资源,助你专注创造,无忧运营。

更多推荐