Claude Code CLI不同场景案例实操指南
Claude Code 是 Anthropic 推出的一款 AI 编程辅助工具,基于大语言模型训练而来,专为开发者设计。它的定位很明确:把“需求转代码”、“代码调试”、“代码优化”、“技术问答”这些编程全流程活儿都包圆了。和那些普通的代码编辑器插件不同,Claude Code 的上下文理解能力更强,能精准捕捉你真正想要什么,然后生成符合规范、拿来就能跑的代码。它支持多编程语言、多开发场景,说白了,就是大幅降低编程门槛、提升开发效率——这个目标确实够实在。
开发环境:Ubuntu24.04,Claude code 2.1.177,deepseek-v4-flash模型
案例一:Python 数据处理——批量处理Excel文件
日常数据处理工作中,有一个场景特别常见:手头有多个零散的 Excel 文件,需要从中提取、清洗并汇总数据。要是全靠手工复制粘贴,不光耗时,还容易出错——这事儿干过的都懂。
这个案例从一个实际的“学生成绩汇总”需求出发,完整演示从需求分析、AI 提示词构建、代码生成到本地测试调整的全过程。
1. 需求分析
假设我们接到了这样一个任务:本地有一个名为 Studentdata 的文件夹,里面放了多个 .xlsx 格式的 Excel 文件。每个文件记录了不同班级的学生信息,包含“姓名、年龄、班级、成绩”四列。
需要实现以下目标:
- :遍历并读取该文件夹下的所有 Excel 文件。
批量读取
- :找出所有成绩
数据清洗与筛选
的优秀学生。≥80分
- :将筛选后的数据拼接到一起,并导出为一个名为
合并导出
优秀学生.xlsx的新文件,存回原文件夹。 - :脚本得有点“扛造”能力——目标文件夹不存在怎么办?个别文件缺了“成绩”列怎么办?成绩数据被填成了非数字字符怎么办?这些都得考虑进去。
健壮性要求(异常处理)
明确了需求之后,就可以让 Claude Code CLI 来快速生成生产级别的代码了。
2. 环境准备与操作流程
(1)初始化工作目录
创建项目文件夹 Studentdata:
mkdir -p ~/claude_code/Studentdata cd ~/claude_code
在 Studentdata 文件夹内放入三个 .xlsx 文件。
正常数据.xlsx
| 姓名 | 年龄 | 班级 | 成绩 |
|---|---|---|---|
| 张三 | 18 | 一班 | 85 |
| 李四 | 19 | 一班 | 72 |
| 王五 | 18 | 二班 | 90 |
| 赵六 | 20 | 二班 | 65 |
| 孙七 | 19 | 三班 | 88 |
缺失列.xlsx
| 姓名 | 年龄 | 班级 |
|---|---|---|
| 周八 | 18 | 四班 |
| 吴九 | 19 | 四班 |
脏数据.xlsx
| 姓名 | 年龄 | 班级 | 成绩 |
|---|---|---|---|
| 郑十 | 18 | 五班 | 92 |
| 陈十一 | 19 | 五班 | 缺考 |
| 林十二 | 20 | 六班 | N/A |
| 黄十三 | 18 | 六班 | 75 |
| 刘十四 | 19 | 七班 | 81 |
(2)启动 Claude Code CLI 并输入提示词
启动 claude code cli 并在交互界面输入以下提示词:
“请编写一个 Python 脚本来批量处理 Excel 文件,并实现一个‘开发-运行-验证’的闭环。 核心需求: 1. 读取当前目录下‘Studentdata’文件夹内所有.xlsx文件。 2. 筛选出成绩≥80分的学生。 3. 将结果合并并保存为‘Studentdata/优秀学生.xlsx’。 4. 必须处理:文件夹不存在、无‘成绩’列、成绩非数字(转为数值或丢弃)的情况。 闭环迭代要求: 1. 代码编写:请先生成完整的 Python 代码。 2. 自我测试:请在生成的代码后,紧跟一段‘测试验证逻辑’(例如:如果文件未生成,打印报错;如果文件已生成,读取并打印前5行数据以确认列名和成绩)。 3. 运行与验证:编写完成后,请使用 `/run` 指令执行该脚本。 4. 反馈修正: - 如果运行报错,请根据终端输出的错误信息,直接修正代码并重新运行。 - 如果脚本运行成功,请读取生成的‘优秀学生.xlsx’的概况(使用 `pd.read_excel().head()`),判断是否符合筛选逻辑(检查成绩列是否全≥80)。 - 若结果不符合要求,请分析原因并重新修改代码,直到验证通过。 请开始编写代码并执行第一次验证。”
(3)Claude Code CLI 完成结果
claude 交互端输出如下:


使用 LibreOffice Calc 查看 优秀学生.xlsx

案例二:Ja vaScript 网页交互——点击按钮实现页面切换
第二个案例,我们把视线转到前端开发领域,挑战一个经典的“Ja vaScript 网页交互”实战:
多页面平滑切换
前端开发这事儿,HTML、CSS、JS 三大件儿配合起来往往挺繁琐。手写基础结构和动画效果不光费时,还容易在响应式适配上栽跟头。这次我们通过 Claude Code CLI,从零构建一个带淡入淡出动画、适配移动端的单文件应用。
1. 需求分析
这次要实现的是一个轻量级的“三页合一”展示型网页,具体需求如下:
- :包含“首页”、“关于我们”、“联系我们”三个逻辑页面。
页面构成
- :提供 3 个导航按钮,点击后平滑切换到对应的页面内容。
交互逻辑
- :切换时需有“淡入淡出”的过渡效果;按钮需具备
视觉动效
hover悬停反馈;标题居中显示。 - :要求代码具备响应式布局(Responsive Design),在普通电脑屏幕和手机端都能完美显示。
终端适配
- :HTML、CSS、JS 代码结构清晰、分离编写,并附带详细中文注释。最终整合输出,确保双击即可在浏览器直接运行。
工程规范
2. 环境准备与操作流程
(1)创建项目空间
mkdir -p ~/2-web_interactive_project cd ~/2-web_interactive_project
(2)启动 Claude Code CLI 并输入提示词
“请协助我开发一个单文件网页 `page-switch.html`,实现页面切换交互。 核心需求: 1. 结构:整合 HTML、CSS 和 Ja vaScript。包含首页、关于我们、联系我们,且适配移动端响应式布局。 2. 效果:按钮需有 hover 反馈;页面切换需实现 0.5s 平滑的淡入淡出(使用 CSS `opacity` 和 `transition`)。 3. 布局:页面标题居中,导航在移动端自动折叠或堆叠。 闭环测试与迭代指令: 1. 代码生成:请先生成完整的单文件代码,并保存为 `page-switch.html`。 2. 自动测试逻辑: - 使用 `/run` 指令在后台尝试启动一个简单的 Python HTTP 服务器(`python3 -m http.server 8000`),以便后续通过 localhost 访问。 - **自我验证**:请检查页面 HTML 结构是否包含对应的 ID/Class。如果代码中有逻辑错误,请根据 HTML 结构修正 JS 事件绑定。 3. 迭代反馈: - 如果你在执行测试时发现无法切换页面,或者页面布局不响应,请自动分析 CSS 类名错误或 JS 元素查找失败的原因。 - 请重新修改代码并覆盖原文件,直到确保页面切换功能符合需求。 4. 最终输出: - 迭代测试通过后,请告知我:‘测试成功,页面已准备就绪’。 - 给出完整的代码块,并提供如何在 Ubuntu 终端通过 `firefox page-switch.html` 打开预览的指引。”
(3)Claude Code CLI 完成结果
claude 交互端输出如下:


通过 firefox /home/da viddou/claude_code/2-web_interactive-project/page-switch.html 指令可以打开网页进行查看。
生成的网页效果如下:


案例三:Ja va 基础——实现学生信息管理系统(简单版)
对于刚接触 Ja va 面向对象编程(OOP)的开发者来说,手写实体类、管理集合、处理控制台输入异常,往往是个反复调试的过程。本例演示如何在 Ubuntu 环境下,利用 Claude Code CLI 快速搭建一个包含“增、查、删”功能的
简单版学生信息管理系统
1. 需求分析
这次要开发的是一个基于控制台(Console)交互的纯 Ja va 应用程序。为了让系统具备一定的健壮性和规范性,设定了以下核心需求:
- :支持添加学生(姓名、学号、年龄)、查询所有学生(按学号升序)、根据学号删除学生。
功能完备
- :通过控制台打印菜单,用户输入数字(1-4)进行功能选择与系统退出。
交互设计
- :严格使用
工程规范
,将学生抽象为独立的面向对象思想
Student类,并与主程序逻辑解耦。代码需附带详细注释。 - :用户输入非数字、添加重复学号、删除不存在的学号、年龄输入为负数时,系统不能崩溃,必须给出友好的错误提示并允许重新输入。
健壮性要求(异常处理)
2. 环境准备与操作流程
(1)创建项目空间
mkdir -p ~/3-ja va_student_system cd ~/3-ja va_student_system # 检查 ja vac 是否安装(若未安装可通过 sudo apt install default-jdk 安装) ja vac -version
(2)启动 Claude Code CLI 并输入提示词
“请协助我开发一个 Ja va 学生信息管理系统 `StudentManagementSystem.ja va`,并实现自动化测试闭环。 核心需求: 1. 功能:实现 Student 类(姓名、学号、年龄)及管理系统,支持添加、查询(学号排序)、删除。 2. 健壮性:处理输入非数字、学号重复、删除不存在学号、负数年龄等异常。 3. 单文件整合:所有代码逻辑放在同一个 Ja va 文件中。 自动化测试闭环要求: 1. 编写测试样例:请在完成 Ja va 代码后,创建一个名为 `test_script.txt` 的输入文件,里面写入一系列模拟用户操作的指令(例如:添加学生->输入数据->查询->删除->异常测试->退出)。 2. 自动化运行: - 使用 `/run` 指令执行编译命令:`ja vac StudentManagementSystem.ja va`。 - 使用 `/run` 指令执行测试:`ja va StudentManagementSystem < test_script.txt > test_output.txt`。 3. 结果验证与迭代: - 请使用 `/read` 指令读取 `test_output.txt`。 - 分析逻辑:如果输出结果中包含错误提示(如‘添加失败’、‘非法输入’等)且不符合预期,或程序崩溃,请自动分析代码逻辑中的错误(如 Scanner 缓冲区清理不当、逻辑判断错误等)。 - 迭代修改:根据分析结果直接修改 `StudentManagementSystem.ja va` 并覆盖,重复上述测试过程,直到 `test_output.txt` 中的输出完全符合预期。 4. 最终交付:确认测试通过后,请通知我,并提供编译运行指令。”
(3)Claude Code CLI 完成结果




案例4:Go 基础——实现简单的HTTP接口
微服务和后端开发领域,Go 语言凭借其极高的并发性能和极简的语法一直很受欢迎。这个案例中,我们利用 Claude Code CLI 在 Ubuntu 终端中“结对编程”,仅凭 Go 语言自带的 net/http 标准库,开发一个简单但五脏俱全的用户信息管理接口。
1. 需求分析
这次要实现的是一个轻量级的 HTTP 接口服务,通过切片(Slice)在内存中模拟数据库存储。具体需求如下:
核心接口
GET /users:获取所有用户信息。GET /users/{id}:根据动态 ID 获取单个用户信息。POST /users:添加新用户(接收 JSON 格式数据)。
数据规范
code, msg, data 结构。
异常捕获
工程规范
中间件支持
2. 环境准备与操作流程
(1)初始化 Go 项目
mkdir -p ~/4-go_http_api cd ~/4-go_http_api go mod init go_http_api
(2)启动 Claude Code CLI 并输入提示词
“请协助我开发一个 Go HTTP 服务 `main.go`,并实现自动化测试闭环。
核心需求:
1. 功能:使用 `net/http` 原生包实现 `GET /users`, `GET /users/{id}`, `POST /users` 接口,支持 JSON 响应,包含日志中间件。
2. 健壮性:妥善处理方法错误、参数无效、ID 不存在等异常。
自动化测试闭环要求:
1. 编写测试样例:请在完成 `main.go` 后,创建一个名为 `test_api.sh` 的 Shell 脚本,利用 `curl` 命令对上述 3 个接口进行完整性测试(包含正常场景和异常场景,如发送非法 ID、非法方法)。
2. 自动化运行:
- 使用 `/run` 指令在后台启动服务:`go run main.go &`(并记录进程 ID 以便后续关闭)。
- 使用 `/run` 指令执行测试脚本:`bash test_api.sh > test_results.txt`。
3. 结果验证与迭代:
- 请使用 `/read` 指令读取 `test_results.txt`。
- 分析逻辑:检查测试结果是否符合预期(例如:POST 是否返回 200,错误请求是否返回 400/404/405)。
- 迭代修改:如果测试脚本反馈失败,请自动分析原因并直接修改 `main.go` 源码,覆盖旧版本,然后重复测试步骤,直到所有测试用例通过。
4. 最终交付:确认测试完全通过后,请自动关闭后台运行的服务,并告知我:‘测试成功,代码已生成并验证’,同时提供 `go run main.go` 的启动指令。”
(3)Claude Code CLI 完成结果

