Claude Code CLI 使用的一些技巧
·
Claude Code CLI 使用手册
概述
Claude Code 是 Anthropic 提供的命令行工具,让您可以在终端中直接使用 Claude AI 进行代码生成、调试、重构和自动化任务。它支持交互式和非交互式两种模式,并可通过 MCP(Model Context Protocol)扩展功能。
基础命令格式:
claude [options] [command] [prompt]
安装与配置
安装方式
方式一:通过 npm 安装
npm install -g @anthropic-ai/claude-code
要求:Node.js ≥ 18
方式二:使用官方安装脚本(推荐)
# macOS/Linux/WSL
curl -fsSL https://claude.ai/install.sh | bash
# Windows PowerShell
irm https://claude.ai/install.ps1 | iex
验证安装
claude --version # 检查版本
claude doctor # 检查安装完整性和配置
初次设置
首次运行会自动打开浏览器完成账户登录与授权。
使用模式
交互式模式(默认)
claude # 启动交互式 REPL
claude "describe this project" # 启动并发送初始提示
claude --continue # 恢复最后一个会话
claude --resume <sessionId> # 恢复指定会话
非交互式模式
claude -p "your task" # 一次性执行
cat file.txt | claude -p "analyze this" # 处理管道输入
常用命令参数
参数 | 作用 | 示例 |
---|---|---|
-p, --print |
非交互式一次性执行 | claude -p "explain this code" |
--output-format |
输出格式(text/json/stream-json) | --output-format json |
--verbose |
显示详细执行过程 | 调试时使用 |
--max-turns <N> |
限制对话轮数 | --max-turns 3 |
--model <name> |
指定模型(sonnet/opus) | --model opus |
--add-dir <dirs> |
添加工作目录 | --add-dir ../src ../lib |
--allowedTools |
预授权工具列表 | --allowedTools "Read,Write" |
--disallowedTools |
禁用工具列表 | --disallowedTools "Bash(rm:*)" |
--continue, -c |
继续上次会话 | claude -c |
--resume <id>, -r |
恢复指定会话 | claude -r session123 |
交互式命令(Slash Commands)
在交互模式中,输入 /
查看所有可用命令:
命令 | 功能 |
---|---|
/help |
显示帮助信息 |
/clear |
清空当前会话上下文 |
/exit |
退出(或 Ctrl+C) |
/config |
打开配置界面 |
/status |
查看账户和使用状态 |
/doctor |
健康检查 |
/cost |
显示当前会话消耗 |
/init |
初始化项目配置文件 |
/memory |
编辑项目记忆文件 |
/model |
切换 AI 模型 |
/login / /logout |
账户登录/登出 |
项目配置管理
配置命令
# 项目级配置
claude config set model sonnet
claude config set allowedTools "Read,Write,Bash(git:*)"
# 全局配置
claude config set --global model opus
claude config add disallowedTools "Bash(rm:*)"
# 查看配置
claude config list # 当前项目
claude config list --global # 全局配置
项目记忆文件
使用 /init
命令在项目根目录创建 CLAUDE.md
文件,Claude 会自动将其作为项目上下文:
cd your-project
claude
> /init
MCP 工具扩展
Claude Code 支持通过 MCP 协议集成外部工具:
常用 MCP 服务器
1. 添加 MCP STDIO 服务器
# 基本语法
claude mcp add <name> <command> [args...]
# 示例:添加本地服务器
claude mcp add my-server -e API_KEY=123 -- /path/to/server arg1 arg2
# 这将创建:command="/path/to/server", args=["arg1", "arg2"]
# 添加文件系统服务器
claude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem /path/to/directory
# Windows 系统需要使用 cmd /c
claude mcp add filesystem -- cmd /c npx -y @modelcontextprotocol/server-filesystem "C:\path\to\directory"
2. 添加 MCP SSE 服务器
# 基本语法
claude mcp add --transport sse <name> <url>
# 示例:添加 SSE 服务器
claude mcp add --transport sse sse-server https://example.com/sse-endpoint
# 示例:添加带自定义头部的 SSE 服务器
claude mcp add --transport sse api-server https://api.example.com/mcp --header "X-API-Key: your-key"
3. 添加 MCP HTTP 服务器
# 基本语法
claude mcp add --transport http <name> <url>
# 示例:添加可流式传输的 HTTP 服务器
claude mcp add --transport http http-server https://example.com/mcp
# 示例:添加带认证头部的 HTTP 服务器
claude mcp add --transport http secure-server https://api.example.com/mcp --header "Authorization: Bearer your-token"
4. 管理 MCP 服务器
# 列出所有已配置的服务器
claude mcp list
# 获取特定服务器的详细信息
claude mcp get my-server
# 删除服务器
claude mcp remove my-server
MCP 工具授权
claude --allowedTools "mcp__filesystem__read_file,mcp__github__list_issues"
实用示例
代码审查
git diff main | claude -p "review these changes for security issues" \
--output-format json \
--max-turns 2
CI/CD 集成
- name: AI Code Review
run: |
claude -p "analyze test results and suggest improvements" \
--output-format json < test-results.log
批量处理
find . -name "*.js" -exec claude -p "optimize this code" {} \;
项目文档生成
claude -p "generate README.md for this project" \
--add-dir src docs \
--allowedTools "Read,Write"
安全与权限
权限最佳实践
- 使用
--allowedTools
精确控制工具权限 - 避免在生产环境使用
--dangerously-skip-permissions
- 通过
--disallowedTools
禁用危险操作
常见权限设置
# 安全的文件操作
--allowedTools "Read,Write"
# Git 操作
--allowedTools "Bash(git:*)"
# 禁用危险命令
--disallowedTools "Bash(rm:*),Bash(sudo:*)"
故障排除
常见问题
Q: 如何清理过多的上下文?
A: 使用 /clear
命令重置会话,或通过 --max-turns
限制对话轮数。
Q: 模型响应太慢?
A: 尝试切换到更快的模型:/model sonnet
Q: 权限被拒绝?
A: 检查 --allowedTools
设置,或使用 /config
调整默认权限。
诊断命令
claude doctor # 全面健康检查
claude --verbose # 显示详细执行日志
/status # 查看当前状态
最佳实践
- 项目初始化:为每个项目创建
CLAUDE.md
文件建立上下文 - 权限控制:始终使用最小权限原则
- 会话管理:定期使用
/clear
保持对话效率 - 工具扩展:合理使用 MCP 扩展增强功能
- 配置管理:通过
claude config
设置项目默认值
高级用法
自动化脚本
#!/bin/bash
# 自动代码生成脚本
claude -p "generate unit tests for all files in src/" \
--add-dir src tests \
--allowedTools "Read,Write" \
--max-turns 5 \
--output-format json > test-generation-results.json
与其他工具集成
# 与 jq 结合处理 JSON 输出
claude -p "analyze this data" --output-format json | jq '.suggestions[]'
# 与 watch 结合实时监控
watch -n 60 "claude -p 'check system status' --max-turns 1"
更新与维护
claude update # 手动检查更新
claude doctor # 诊断环境问题
相关资源
此手册基于 Claude Code CLI 最新版本编写,如遇到问题请参考官方文档或联系技术支持。
更多推荐
所有评论(0)