标题: [文件操作] 【已解决】批处理把所有文件按照指定数量自动分成多个文件夹 [打印本页]
作者: cmd11011 时间: 2015-8-22 18:26 标题: 【已解决】批处理把所有文件按照指定数量自动分成多个文件夹
本帖最后由 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
作者: 回家路上 时间: 2015-8-22 18:33
回复 1# cmd11011 - @echo off & setlocal enabledelayedexpansion
- set a=-1
- for /f "delims=" %%i in ('dir /b *.txt') do (
- set /a a+=1,b=a/2+1
- if not exist "!b!\" md "!b!"
- move /y "%%i" !b!>nul
- )
- pause & exit /b
复制代码
作者: cmd11011 时间: 2015-8-22 18:39
回复 2# 回家路上
没达到预想效果额,文件夹 “3” 里面还是 4.txt 5.txt 6.txt 7.txt
我想每个文件夹下都只有相等的文件数量。
作者: cmd11011 时间: 2015-8-22 18:48
找到了一个- @echo off&setlocal enabledelayedexpansion
- set n1=200
- set/a m=1000,n=0
- for /f "delims=" %%i in ('dir/b/a-d^|findstr/iv "%~nx0"')do (
- set/a n+=1,q=n%%n1
- if !q!==1 set/a m+=1&set d=!m:~-3!&md !d!
- echo %%i ==^> !d!
- move "%%i" !d!\)
- pause
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |