客户只给了文件名清单,怎么找回 RAW 原片

客户发来一个 Excel、一段聊天记录,或者干脆就是一串 IMG_9427.jpg 这样的名字——没有文件夹。 这时候没法直接匹配:按文件名的工具读的是文件夹,不是清单。 中间这一步得先自己做,这篇讲的就是怎么把它做完。

最后更新:2026 年 11 月 6 日 · macOS 14.6+ · 中国区 ¥18(CNY)

先分清你拿到的是哪种清单

三种形态的处理成本差别很大,先看清楚再动手。

清单形态典型样子怎么处理
纯文本 / 聊天记录 一串名字,可能用换行、逗号或空格分隔,常有人手打的错字 整理成一行一个,去掉多余空格和空行
Excel / 表格 文件名占一列,旁边还有客户的备注、张数、加急标记 只提取文件名那一列,其余全部丢掉
截图 / PDF 目录 排版整齐但不能直接复制文字 先 OCR 或手抄,然后逐行核对编号

一个必须先说清的前提

按文件名的匹配,是在你已有的文件里去找。清单只回答「要找哪些」,它本身不产生任何文件。

所以如果那批 JPG 或 RAW 从来没拷到你手上、或者已经删了,任何按文件名的工具都找不到。 那是备份和数据恢复的问题,不是匹配的问题。先把文件找回来,再谈匹配。

三步把清单变成可匹配的文件夹

第 1 步:把清单整理成一行一个文件名

目标是得到一个纯文本文件,每行只有文件名,不带序号、不带备注、不带引号。

第 2 步:按清单把文件复制进同一个文件夹

这一步的工作量取决于张数,按规模选做法:

20 张以内:在 Finder 里逐个搜编号,选中后复制到新文件夹。手动最快。

几十张:还是逐个搜,但建议开两个 Finder 窗口并排——一个放源目录,一个放目标目录,拖过去比复制粘贴少几步。

上百张:别手动。把清单存成文本文件,用下面这段脚本一次跑完:

#!/bin/bash
# 把清单里的文件名,从原片目录批量复制到一个新文件夹
LIST="$HOME/Desktop/客户清单.txt"        # 一行一个文件名
SRC="$HOME/Pictures/2026-11-06_原片"     # 你自己的 JPG 原始目录
DST="$HOME/Pictures/2026-11-06_客户选片" # 复制到这里

mkdir -p "$DST"
missing=0

while IFS= read -r line; do
  if [ -z "$(echo "$line" | tr -d '[:space:]')" ]; then
    continue
  fi
  base="$(basename "$line")"
  stem="${base%.*}"
  found="$(find "$SRC" -maxdepth 1 -iname "${stem}.*" -print -quit)"
  if [ -n "$found" ]; then
    cp "$found" "$DST/"
  else
    echo "未找到:$line"
    missing=$((missing + 1))
  fi
done < "$LIST"

echo "完成,目标文件夹:$DST"
echo "清单中未找到:$missing 个"

用法:把上面三段路径改成你自己的,存成 copy-list.sh,然后在终端里执行 bash ~/Desktop/copy-list.sh。 脚本会按文件名主体(IMG_9427)在源目录里找文件,不管扩展名是 .JPG 还是 .jpg, 找到就复制,找不到就在输出里列出来。

它会做两件手动做不到的事:不会漏(逐行跑完整个清单),也不会重复(每个名字只处理一次)。 这两点正是清单条目多了以后最容易出问题的地方。

第 3 步:核对数量,再载入匹配

跑完后先看两个数字:目标文件夹里有多少个文件、清单里有多少行。两个数对不上,说明有条目没找到, 脚本输出里会逐条告诉你缺哪几个。对着补齐之后再进匹配流程。

文件夹准备好之后的操作,见完整教程:客户选完 JPG 后怎么找回 RAW 原片。

名字对不上时,按这个顺序查

清单是客户手写或从别的软件导出的,和实际文件名经常差一点。常见差异和处理办法:

现象原因怎么处理
IMG_9427 / img-9427 下划线和连字符被换掉,或大小写不一致 统一大小写与分隔符;匹配时主体要一致
清单只有 9427 客户只抄了序号,没抄前缀 在清单里补上 IMG_ 之类的固定前缀
DSC01234 / DSC_1234 补零位数和前缀写法不同 按序号对齐,不要按整串字符比
清单写 .jpeg,实际是 .jpg 扩展名写法不一致 忽略扩展名,只比文件名主体
截图里的 O 和 0、8 和 6 OCR 或手抄识别错误 逐行核对,这类错误脚本也救不了

需要说明的是:按文件名的工具都不做模糊匹配。差一个字符就是对不上,它不会猜。 与其找能猜的工具,不如把清单改对——客户的清单一共就几十行,改一遍比反复试错快得多。

常见问答

客户只给了一串文件名,能直接用工具匹配吗?

不能。按文件名的匹配读的是文件夹,不是清单。需要先把清单里那些文件从你已有的素材中挑出来、复制进同一个文件夹,再把该文件夹载入工具。

客户发的是 Excel,怎么把文件名提取出来?

只保留文件名那一列:在表格里选中该列复制,粘贴到纯文本编辑器,确认每行一个文件名、没有多余的空格和空列。如果一行里有多个名字,用换行替换掉逗号或分号再保存。

客户发的是截图或 PDF 目录,怎么办?

先转成可复制的文字。截图可以试系统自带的实况文本或任何 OCR 工具,但识别出的编号一定要逐行核对——数字 0 和字母 O、8 和 6 最容易错。这一步没有捷径,错一个字符那一条就匹配不上。

名字对不上,能模糊匹配吗?

按文件名的工具都比较的是文件名主体,不做模糊或相似度猜测。大小写、全角半角、补零方式、前缀有无,都会导致对不上。可行的做法是先把清单改成和实际文件名一致,再匹配。

清单里有几个文件我自己也没有,怎么办?

匹配只能找到你手上确实存在的文件。清单里那些从来没有拷到你这里的,任何按文件名的工具都找不回来,需要回到源头要原件,或者走备份与数据恢复。这不是匹配失败,是文件本来就不在。

在 Mac 上试一次

RAW Matcher 在 Mac App Store 提供,全程本地运行:不连接服务器、不需要账号,只访问你主动选择的文件夹。