上一次,使用bat來將txt文件給合并起來,而這次又有個小需求要將某目錄下的大數(shù)量的指定類型文件(比如1w張圖片,或者2w個xml)拆分到多個文件夾中。
第一期先實現(xiàn)了個簡單的按數(shù)量拆分的批處理文件,后面根據(jù)需求可以再過濾文件修改時間,文件名等(不過如果需求真的到了那么復(fù)雜,可能會換用python來寫)。
代碼如下
@echo off
rem
set usage=Usage:split_folder 源文件夾(可加通配符) 目標文件夾
rem 待拆分的源文件夾
set src=%1%
rem 拆分的目標文件夾
set dest=%2%
rem 檢查參數(shù)
if {%src%} == {} echo "%usage%" && goto end
if {%dest%} == {} echo "%usage%" && goto end
rem 每一頁條數(shù)
set page_count=2
rem 起始頁碼
set cur_page=0
rem 起始頁內(nèi)索引
set index=0
SETLOCAL ENABLEDELAYEDEXPANSION
rem 循環(huán)處理列舉出來的文件,如有特殊需求,可改下面的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
)