---
title: "Claude Code 批量文档处理：一次处理多个文件"
description: "先用三份样本把规则跑通，再把任务写成说明文件，数量大就让它写脚本；配一套对账与留痕办法，批量才敢用。"
updated: 2026-11-13
canonical: https://docai.cc/learn/batch-document-processing/
markdown_mirror: https://docai.cc/learn/batch-document-processing.md
---
## 先判断值不值得批量

不是文件多就该批量。判断标准只有一条：规则是不是同一套。

给一批合同取同样的六个字段、给一批产品描述套同一个结构，这类任务适合批量。每份都要单独判断重点、每份结论都不同，批量只会把错误放大。还有一种情况也别急：文件只有十来个，手工做完可能比搭流程还快。

批量的真实成本不止跑一遍。你要写规则、做样本、验收结果、处理失败项。先把这几步的时间算进去，再决定动不动手。

## 先跑三份样本

规则写在心里，和写成文字，效果差很多。找三份文件先试，而且最好包含最难的那几份：格式最乱的、字段缺失的、文件名不规范的。三份都能过，再谈全量。

检查三件事：字段齐不齐、格式是不是每份都一样、值能不能在原文里找到。发现不对，改的是提示词或说明文件，不是逐份手工修补。

样本还有一个作用：它逼你把「差不多就行」变成明确规则。比如日期写成「3 月 5 日」算不算合格，金额带不带币种符号，这些含糊处不提前定，全量结果就会五花八门。

## 把任务写成一份说明文件

规则不要每次现打。在数据目录里放一份说明文件，让它先读规则再干活。这样换人、换天、换批次，口径都不变。

```text
# 处理说明
输入：in/ 下所有 txt，按文件名排序
输出：out/result.csv，UTF-8 编码
列：文件名、日期、类别、金额、原句
规则：
- 日期统一写成 YYYY-MM-DD，识别不了写「未识别」
- 金额只保留数字和两位小数
- 每行必须附一句原文，能追溯
- 不改动 in/ 里的任何文件
```

对应的指令很短：「读 处理说明.md，按它处理 in/ 下的前三个文件，结果写到 out/sample.csv」。让它自己读文件里的规则，比在对话框里贴一长段更稳，也方便你改版本。读取本地文件的做法见[让模型读文件](/learn/let-model-read-files/)。

## 数量大就让它写脚本

几百份文件逐个对话处理，既慢又容易漏。这时让它写一个脚本，在本机跑。关键是分阶段，不要一次跑到黑：

```text
in/ 下有 180 个 txt。先写脚本，只处理前 3 个，输出 out/sample.csv。
我确认后再跑全部。要求：
- 只读 in/，不修改原文件
- 单个文件失败不影响其他文件，失败原因写进 out/errors.csv
- 结束时打印成功、失败、跳过的数量
```

脚本写完先看四件事再运行：读的是哪个目录、写的是哪个目录、失败后是继续还是中断、用什么编码。第一条和第二条决定它会不会误伤原件，后两条决定出问题时你有没有线索。第一次运行放在副本目录里，确认无误再指向真实数据。

这种分工是[工具调用](/concepts/tool-use/)的日常形态：模型负责写和改脚本，真正读写文件的是你机器上的程序。

## 分批、对账、留痕

- 每批控制在十来份，跑完一批看一眼结果，再放下一批。
- 记录已完成的文件清单，中途断了能接着跑，不用从头再来。
- 对账：输入总数等于成功、失败、跳过之和；输出行数与成功数对应，对不上就查。
- 失败项单独列出来逐条看，不要静默跳过，也不要让脚本自动重试到死循环。
- 抽一成结果人工核对，重点看数字、日期和否定表述。

输出永远写到新目录，输入目录保持只读。原始文件先复制一份到别处，这个动作花不了一分钟，却能救回一整天的活。

### 结果怎么落到表格

批量结果最好直接输出成表格文件，而不是聊天里的一堆段落。要求写清四件事：列名与顺序、编码用 UTF-8、含逗号或引号的字段要加引号、失败行留空并在最后一列写明原因。导出后用表格软件打开，先看列数对不对，再抽十行核对。要粘进 Excel 的，让它输出 CSV；要进数据库或脚本的，输出 JSON 每行一条更稳。规模更大的处理可以看[扩大批量处理规模](/learn/scale-up-batch-processing/)。

## 模板固定，变量留空

重复性任务值得做成模板：固定的部分一次写好，每次只替换变量区。比如从合同里取字段：

```text
任务：提取合同关键条款
输出字段（按此顺序，缺项写「未提及」）：
合同编号 / 甲方 / 乙方 / 金额（含币种）/ 付款方式 / 服务期限 / 违约金比例
规则：
- 金额只写数字与币种，不做单位换算
- 日期写成 YYYY-MM-DD
- 每条后面附一句原文，便于核对
=== 以下是合同正文 ===
[粘贴内容]
```

模板存成独立文件，改动时在文件名里加版本号，避免这批复用上一批的旧规则。变量区用醒目的分隔符标出来，模型就不会把说明文字当成正文的一部分。

## 失败项先归类再动手

失败通常集中在四类：文件格式不对、关键字段缺失、单份内容超长、编码不是 UTF-8。先按原因分组数一遍，同一原因超过三份，就改规则重跑整批，不要逐份手工补——手工补出来的结果格式最容易漂移。只有零星一两份特殊文件，才值得单独处理。每一批跑完记下「批次号、文件范围、规则版本、成功与失败数」，下次接续时不用重新猜上次停在哪。

## 常见坑

- 一上来就全量跑，规则错了全部返工；
- 输出直接覆盖原文件，错了没有退路；
- 只看「处理完成」的提示，不看失败清单；
- 每批用的提示词略有不同，结果格式逐批漂移；
- 目录里混着子文件夹和重名文件，实际漏处理。

批量处理省下的是重复动作，不是判断。规则由你定，样本由你验，最后那遍抽查也得由你做。下一节处理最常见的一类表格：[Excel 数据读取与操作](/learn/excel-reading-and-editing/)。
