Claude Code CLI 命令

Claude Code CLI 的价值在于它既能交互使用,也能脚本化使用,还能和 shell 管道组合。应把命令当成工作流组件,而不是一次性提示词。

最近核验
适用版本
适用于 Claude Code 2.1.x。本机使用 2.1.198 检查 CLI 拼写;当前官方文档可能包含更新的 2.1.x 行为。
核验方式
2026-07-19 对照官方文档、CLI reference 和 changelog。本机检查顶层、auth 和 MCP help。示例 print 请求会消耗账户/API 用量,本次审查未执行该模型请求。
官方来源
官方 CLI reference官方 Changelog

可复现实践

把一次性仓库盘点变成可机器校验的输出

用 print mode 提出有边界的只读问题,限制工具,保存响应并校验传输格式。

准备

  • 可信仓库和有效认证。
  • 本机有 jq 或其他 JSON parser。
  • 理解 print mode 可能产生用量,且跳过交互式 workspace trust 对话框。

执行步骤

  1. 确认本机版本支持的 flags

    本机 help 是拼写和可选值的直接证据。

    步骤 1
    claude --version
    claude --help
  2. 执行只读盘点

    提示词要求来源,tools 和 plan mode 限制执行面。

    步骤 2
    claude -p "List build and test commands with the file that defines each one." \
      --permission-mode plan \
      --allowedTools "Read" "Grep" "Bash(git status --short)" \
      --output-format json > /tmp/claude-inventory.json
  3. 校验输出封装

    可解析响应只证明 CLI transport,不证明每条模型结论正确。

    步骤 3
    jq -e . /tmp/claude-inventory.json >/dev/null
  4. 到仓库文件核对引用命令

    使用盘点结果前,打开引用的 package、构建或 CI 文件,逐项核对拼写。

预期结果

命令退出并写入有效 JSON,盘点结果带来源且能回到仓库文件核对。

验证

  • 要求退出码为 0 且 JSON 有效。
  • 每个报告命令都与其引用文件核对。
  • 不把模型文字当作命令执行成功证明。

失败处理

出现权限提示或拒绝

收窄或修正 allowed tool pattern,不要直接切换 bypassPermissions。

JSON 无效或为空

检查退出码、stderr、认证以及本机版本是否支持 output-format。

清理或回退

  • 审查后删除临时 JSON。
  • 如命令意外修改文件,停止并先检查 git status。

边界与不适用场景

  • print mode 适合有边界自动化,不适合需要多轮澄清的任务。
  • allowed tools 会自动批准匹配工具;如需彻底移除其他工具,应使用 --tools。

交互式和一次性用法

使用 `claude` 在当前项目启动交互式会话;已经明确任务时,可带初始请求启动;需要把结果交给脚本或自动化流程时,可使用 print 模式。

继续和恢复会话

长任务需要会话连续性。继续最近会话可保留上下文;按标识恢复会话适合同时维护缺陷修复、重构、审查和调研等多个线程。

认证和状态检查

认证命令可在任务开始前确认当前环境是否能使用 Claude Code。团队写 onboarding 文档或排查清单时,这一步能减少误判。

管道和自动化

可以把日志、diff、文件列表或命令输出通过管道交给 Claude Code,用于总结失败、初步审查变更文件或生成给人工审查的解释。

把日志管道交给 Claude Code
cat build.log | claude -p "Summarize the first actionable error and likely fix."
用 print 模式继续会话
claude -c -p "Check for type errors in the files changed on this branch."

常用 CLI 命令

这些命令覆盖日常开发:启动会话、恢复工作、检查认证、更新 CLI,以及运行后台代理。

CommandDescription
claude在当前目录启动交互式会话
claude "query"带初始提示词启动交互模式。
claude -p "query"一次性查询并退出,适合脚本。
claude -c继续当前目录最近一次会话
claude -r "name" "query"按名称或 ID 恢复会话并追加提示。
claude auth status --text检查当前环境是否已认证
claude update更新 Claude Code 到最新版本。
claude --bg "task"启动后台会话并释放终端。

自动化常用 flags

通过 flags 可以调整权限、模型、工作目录和输出行为,而无需修改项目文件。

CommandDescription
--permission-mode plan在允许编辑前先进入 plan 模式
--add-dir ../apps授予额外目录的读写访问。
--allowedTools "Bash(git *)"在 CI 或脚本中自动批准匹配工具调用。
--model sonnet为当前会话选择模型。
--bare -p最小脚本模式,不自动加载 skills 或 MCP

CLI 与 Slash commands

CLI flags 用于启动和脚本化会话Slash commands 控制已在运行的会话。日常工作中通常两者配合使用。

CLI 使用检查

相关主题