[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 【已解决】批处理把所有文件按照指定数量自动分成多个文件夹

本帖最后由 cmd11011 于 2015-8-24 08:19 编辑

我想把A文件下包括子目录的所有文件都按照指定数量在B文件夹下 生成若干文件夹 把指定数量进去。

示例:

A文件夹下:

1.txt
2.txt
3是文件夹含有下列文件:
4.txt
5.txt
6.txt
7.txt

最终结果想要每两个文件放到一个文件夹。
bat自动创建文件夹1:
1.txt
2.txt

bat自动创建文件夹2:
4.txt
5.txt

bat自动创建文件夹3:
6.txt
7.txt
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

回复 1# cmd11011
  1. @echo off & setlocal enabledelayedexpansion
  2. set a=-1
  3. for /f "delims=" %%i in ('dir /b *.txt') do (
  4. set /a a+=1,b=a/2+1
  5. if not exist "!b!\" md "!b!"
  6. move /y "%%i" !b!>nul
  7. )
  8. pause & exit /b
复制代码
1

评分人数

TOP

回复 2# 回家路上


    没达到预想效果额,文件夹  “3”  里面还是 4.txt 5.txt 6.txt 7.txt

我想每个文件夹下都只有相等的文件数量。

TOP

找到了一个
  1. @echo off&setlocal enabledelayedexpansion
  2. set n1=200
  3. set/a m=1000,n=0
  4. for /f "delims=" %%i in ('dir/b/a-d^|findstr/iv "%~nx0"')do (
  5.    set/a n+=1,q=n%%n1
  6.    if !q!==1 set/a m+=1&set d=!m:~-3!&md !d!
  7.    echo %%i ==^> !d!
  8.    move "%%i" !d!\)
  9. pause
复制代码

TOP

返回列表