跳到正文

🎈 想读易懂版?

本章有易懂版(大白话讲重点,10 分钟读完):[第 11 章 文件与目录:整理、搜索、批量处理(易懂版)](../../easy/第11章 文件与目录:整理、搜索、批量处理(易懂版).md)

第 11 章 文件与目录:整理、搜索、批量处理

本章目标:掌握文件类任务的三板斧——整理、搜索、批量处理,以及批量操作的安全规程。文件任务的精髓是"先看清楚,再动手,动完留痕"。批量操作不怕慢,就怕不可逆。

11.1 场景:文件越堆越多,找东西越来越难

电脑里的文件越堆越多,找东西越来越难。文件类任务包括三大类:

类别说明典型例子
整理归档、重命名、统一格式整理下载目录、批量重命名
搜索按文件名找、按内容找找某个报告、搜某段代码
批量处理成百上千个文件的统一操作全部转码、统一加头注释

11.2 找文件:用对工具

11.2.1 工具对照表

需求工具示例
按文件名/扩展名找Glob**/*.md 找所有 Markdown
按内容找Grep搜 "TODO" 或函数名
看目录结构目录列表了解项目布局
看文件内容Read读具体文件

11.2.2 黄金法则

找文件用 Glob,搜内容用 Grep。

不要让我用命令行的 find/grep 绕路——专用工具更快、更安全、更好追踪。

两者的关键区别:

Glob(按名找)Grep(按内容找)
找什么文件名/路径文件里的文字
典型问题"项目里有哪些 .md 文件?""这个报错出现在哪些文件?"
使用场景盘点资源定位问题

组合技巧

先用 Glob 缩小范围,再用 Grep 精确搜索。 比如:"先在 src/ 下找所有 .py(Glob),再在结果里搜 'user_id'(Grep)"——两步就把问题范围从全项目缩小到几个文件。

11.3 案例:整理一个混乱的下载目录

11.3.1 指令

整理 downloads/ 目录:
- 图片 → 按年月归档到 photos/2026-08/
- 文档 → 按类型归档到 docs/{pdf,word,sheet}/
- 其他 → 移到 archive/
先给出整理计划(会移动哪些文件),我确认后再执行。

11.3.2 我的做法(逐步拆解)

① 列出目录全貌:文件总数、类型分布、命名规律
② 生成"整理计划表":
   源文件 → 目标位置(每个文件的去向你都看得见)
③ 标注潜在冲突(重名、目标目录已存在同名)
④ 你确认计划 → 执行移动
⑤ 输出变更日志(哪些文件去了哪里)→ 可回退

11.3.3 为什么必须"先出计划"

整理是不可逆操作(移动后路径就变了),出计划 = 给后悔留一条路。

  • 计划阶段发现问题:改一行计划即可;
  • 执行后发现问题:路径全变了,找回来很痛苦。

11.4 批量处理:安全第一

批量操作最容易出事,所以规矩更多:

规矩说明示例
先统计后动手先说清规模"共有 342 个文件要移动"
先试运行能模拟就先模拟干跑模式、-WhatIf
保留日志每步有记录,可撤销输出变更日志文件
不可逆操作前必须确认删除、覆盖、改名冲突逐项列出再问

批量操作三问

执行任何批量操作前,先过三问:

  1. 影响多少个文件?(数量)
  2. 操作可逆吗?(删除/覆盖 = 不可逆)
  3. 出错怎么回退?(日志/备份)

11.5 内容搜索的进阶用法

Grep 不只是"搜关键词",它支持正则表达式和组合条件:

用法示例效果
正则表达式err.*\d{4}匹配 err 后跟 4 位数字
大小写不敏感readme同时匹配 README/ReadMe
限定文件类型只在 *.rs*.md 里搜缩小范围
多模式组合一次搜多个模式同时找 TODO 和 FIXME
例:在 src/ 里搜所有包含 "TODO" 或 "FIXME" 的代码行

11.5.1 搜索策略

  1. 从宽到窄:先全局搜,再按文件类型、目录缩小;
  2. 关键词要多备几个:同义词、缩写、大小写变体;
  3. 搜不到 ≠ 不存在:可能编码问题或关键词不对,换个说法再试。

11.6 文件任务的完整流程模板

① 盘点:Glob/列目录 → 搞清楚有什么
② 规划:整理计划 / 处理方案(给你确认)
③ 试运行:能模拟先模拟,列清单
④ 执行:动手(留日志)
⑤ 验证:抽查结果,确认符合预期
⑥ 汇报:改了什么、去哪了、有无异常

六步走完,文件任务稳如老狗。

11.7 练习

  1. 让我用 Glob 列出某个目录下的全部文件,按类型统计;
  2. 给我一个真实的整理需求,要求"先出计划再执行";
  3. 用 Grep 搜一个你关心的关键词(正则或大小写不敏感),看看发现;
  4. 走一遍完整六步流程:盘点 → 规划 → 试运行 → 执行 → 验证 → 汇报。

小结:文件任务的精髓是**"先看清楚,再动手,动完留痕"**。批量操作不怕慢,就怕不可逆——先统计、先试运行、留日志、要确认,四道保险缺一不可。下一章:数据与表格。

以真实任务为主线的 MomaWork 助手实战读本