美文网首页
bat实例:用windows批处理将文件分组

bat实例:用windows批处理将文件分组

作者: 赵海洋 | 来源:发表于2017-03-21 17:56 被阅读0次

上一次,使用bat来将txt文件给合并起来,而这次又有个小需求要将某目录下的大数量的指定类型文件(比如1w张图片,或者2w个xml)拆分到多个文件夹中。

第一期先实现了个简单的按数量拆分的批处理文件,后面根据需求可以再过滤文件修改时间,文件名等(不过如果需求真的到了那么复杂,可能会换用python来写)。

代码如下

@echo off 
rem 
set usage=Usage:split_folder 源文件夹(可加通配符) 目标文件夹

rem 待拆分的源文件夹
set src=%1%

rem 拆分的目标文件夹
set dest=%2%

rem 检查参数
if {%src%} == {} echo "%usage%" && goto end
if {%dest%} == {} echo "%usage%" && goto end

rem 每一页条数
set page_count=2

rem 起始页码
set cur_page=0

rem 起始页内索引
set index=0

SETLOCAL ENABLEDELAYEDEXPANSION 

rem 循环处理列举出来的文件,如有特殊需求,可改下面的copy语句
for /f "delims=" %%i in ('dir /b /s /a-d %src%') do (
    set /a index = !index! + 1
    set /a cur_page = !index! / %page_count%
    if not exist %dest%\!cur_page! mkdir %dest%\!cur_page!
    
    copy "%%i" "%dest%\!cur_page!\%%~nxi" 
)   

:end
pause
)

相关文章

网友评论

      本文标题:bat实例:用windows批处理将文件分组

      本文链接:https://www.haomeiwen.com/subject/civgnttx.html