Windows 多层嵌套文件夹批量整理:三级文件一键移到二级文件夹
一、问题场景文件夹嵌套结构如下plaintext一级总文件夹 ├─ 二级文件夹1 │ └─ 三级文件夹所有文件都在这里 ├─ 二级文件夹2 │ └─ 三级文件夹 ├─ 二级文件夹3 └─ ……一共80个二级文件夹每个二级里面都只有1个三级文件夹需求批量把每个三级文件夹里的所有文件自动移动到对应二级文件夹不用手动一个个复制粘贴。二、解决思路遍历一级目录下所有二级文件夹进入每个二级文件夹找到唯一的三级子文件夹将三级文件夹内所有文件 / 子目录自动上移到二级文件夹迁移完成后一键批量删除所有空的三级文件夹三、操作教程超简单无脑照着做步骤 1进入根目录打开一级总文件夹就是存放 80 个二级文件夹的最外层文件夹。步骤 2新建批量迁移脚本在空白处右键 → 新建 → 文本文档把下面代码粘贴进去batecho off chcp 65001 title 三级文件批量移至二级文件夹 echo echo 正在自动将所有三级文件夹内容迁移到二级目录 echo 请切勿关闭窗口等待运行完成 echo echo. :: 遍历当前下所有二级文件夹 for /d %%a in (*) do ( :: 遍历每个二级文件夹内的三级文件夹 for /d %%b in (%%a\*) do ( :: 把三级文件夹内所有内容移动到对应二级文件夹 move %%b\* %%a\ nul 21 ) ) echo. echo ✅ 全部文件迁移完成 echo pause然后另存为文件名三级文件上移到二级.bat保存类型所有文件编码UTF-8步骤 3新建清理空文件夹脚本再新建一个文本文档粘贴以下代码batecho off chcp 65001 title 批量清理空文件夹 echo echo 正在自动清理所有空的三级嵌套文件夹 echo echo. :: 递归删除所有空文件夹 for /d /r %%d in (*) do rd %%d 2nul echo ✅ 所有空文件夹已清理完毕 echo pause另存为清理所有空文件夹.bat保存类型同样选所有文件。步骤 4运行脚本重要建议先把整个一级文件夹备份一份防止文件误操作丢失把两个.bat文件放在一级总文件夹里和 80 个二级文件夹同级先双击运行三级文件上移到二级.bat等待自动迁移完成再双击运行清理所有空文件夹.bat自动删掉全部空的三级文件夹。四、脚本原理说明for /d %%a in (*)遍历当前目录下所有二级文件夹for /d %%b in (%%a\*)进入二级文件夹读取里面的三级文件夹move %%b\* %%a\将三级内所有文件移动到二级目录清理脚本递归遍历目录只删除空文件夹不会删有文件的目录。五、注意事项若存在同名文件系统会弹窗提示是否覆盖按需选择即可脚本仅适用于一级→多个二级→每个二级仅一个三级的固定嵌套结构一定要先备份再运行避免意外文件丢失脚本仅 Windows 可用Mac/Linux 不适用。