@echo offRem **********定义两个变量源目录、备份目录set "d1=d:\a"set "d2=d:\b":: 如有多种类型可如下行所示用空格分隔加在后面set ex=*.docx *.txtcd/d "%d1%"for /f "delims=" %%i in ('dir/b/s/a-d %ex%') do ( set "pa=%%~dpi" setlocal enabledelayedexpansion set "pa=!pa:%d1%=%d2%!" md "!pa!" 2>nul move "%%i" "!pa!" echo %%i ==^> !pa! endlocal)pause
还有就是分类接种备份
@echo offRem 这个批处理只能将文件归类放入到一个文件里,但不能按照源路径创建文件目录原因是路径的拆分字符串的拆分rem 定义变量rem 盘符、文件后缀、源主目录、备份目录、set PF=D:set HZ=pptxset YML=aset BFML=brem 代码******************%PF%cd \%YML%rem 判断下是否有创建备份文件如果没有自动创建if not exist %PF%\%BFML%\ md %PF%\%BFML%\set NEWDIR=%PF%\%BFML%\back\%HZ%\for /R "%PF%\%YML%\" %%s in (*.%HZ%) do (if not exist %NEWDIR% md %NEWDIR%move %%s %NEWDIR%)echo %PF%\%YML%\*.%HZ% 文件全部备份到 %NEWDIR% 目录pause