找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 23181|回复: 5

[文件操作] 批处理怎样把100个txt文档平均分配到100个文件夹里?

[复制链接]
发表于 2022-3-10 20:18:16 | 显示全部楼层 |阅读模式
提问: 举例 A文件夹下有100个不同名字的TXT文本文档,我需要把每个文档各放到不同的文件夹里 放完后,文件夹名字自动改为数字,数字序号从1开始到100(有几个文档就自动到文件夹几号),文档放的顺序无所谓,可以最后那个文档或者中间那个文档放在文件夹1里都可以,
最终目标就是把100个文本文档平均分配到100个文件夹里,并且文件夹名字自动改为1,2,3,4,---100   

或者手里有N个txt文档,现在需要把每个文档挨个复制到不同的新文件夹里,复制完,文件夹名字自动改成1,2,3,4,到N。 每个文件夹只允许存在一个TXT文档
求会的大佬发个BAT的代码 小弟 感激不尽!
发表于 2022-3-10 20:30:00 | 显示全部楼层
test.bat
ansi编码
  1. @echo off & cd /d "%~dp0"
  2. setlocal enabledelayedexpansion
  3. REM 文件夹名称或路径
  4. set "folder=A"
  5. set /a "n=1"
  6. for %%i in ("%folder%\*.txt") do (
  7.         mkdir "%folder%\!n!" >nul 2>nul
  8.         move "%%~i" "%folder%\!n!"
  9.         set /a "n+=1"
  10. )
  11. pause&exit
复制代码
发表于 2022-3-10 21:07:34 | 显示全部楼层
回复 1# 5988911


test.bat 放在A文件夹下执行
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. cd /d "%~dp0"
  4. set "n=0"
  5. for %%i in (*.txt) do (
  6.     set /a n+=1
  7.     md "!n!"
  8.     move /y "%%i" "!n!"
  9. )
复制代码
 楼主| 发表于 2022-3-10 22:06:34 | 显示全部楼层
回复 3# Batcher


    谢谢大佬版主,你的太牛逼了
另外不好意思在求一个BAT代码
需求:把当前根目录下的所有文件夹包括子文件夹内的TXT文本文档的内容合并到1个新的文本文档里,每个内容需要自动换行
打比方E盘BOOK文件夹里有文本文档A,内容为“我爱你”
               BOOK文件夹里有子文件夹SAFE,SAFE里有文本文档B,内容为 “我要娶你”
               SAFE文件夹里有子文件夹LOVER,LOVER里有文本文档C,内容为“嫁给我好吗”
最终需求为把ABC3个文本文档的内容合并,并保存到D盘的KISS文件夹下,
合并的文本文档内容为,第一行,我爱你;   第二行,我要娶你;   第三行,嫁给我好吗
合并后的内容不能全部在第一行 变成“我爱你我要娶你嫁给我好吗”  这样
前天有个小哥帮忙做的, 没有把子文件夹里的文本内容也全部合并进去,合并后的后面的内容也没有自动换行,是首尾相连的
发表于 2022-3-11 09:41:33 | 显示全部楼层
回复 4# 5988911


    请把那个代码发出来我看看如何修改
 楼主| 发表于 2022-3-11 10:21:30 | 显示全部楼层
回复 5# Batcher


把当前根目录下的所有文件夹包括子文件夹内的TXT文本文档的内容合并到1个新的文本文档里,每个内容需要自动换行
打比方E盘BOOK文件夹里有文本文档A,内容为“我爱你”
               BOOK文件夹里有子文件夹SAFE,SAFE里有文本文档B,内容为 “我要娶你”
               SAFE文件夹里有子文件夹LOVER,LOVER里有文本文档C,内容为“嫁给我好吗”
最终需求为把ABC3个文本文档的内容合并,并保存到D盘的KISS文件夹下,
合并的文本文档内容为,第一行,我爱你;   第二行,我要娶你;   第三行,嫁给我好吗
合并后的内容不能全部在第一行首尾相连

    @echo off
md D:\KISS\ 2>nul
del D:\KISS\D.txt 2>nul
for /f "tokens=*" %%i in ('dir /b /s E:\BOOK') do (
    if %%~xi==.txt (for /f "tokens=*" %%n in (%%i) do (echo %%n >>D:\KISS\D.txt))
)
pause
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 07:16 , Processed in 0.018868 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表