本帖最后由 a6236130 于 2020-12-31 08:40 编辑
原代码如下,原代码的效果是提取含指定字符的文件,并以文件夹名+文件名的方式保存。
现在需要修改成提取含指定字符的文件,提取出来时保持原文件夹结构。(文件夹结构不固定,有多有少。所以请尽量以下列原代码的基础上修改)
求具体代码。- echo off & title 批量提取指定名称文件
- set "file_name=la1 ll2 ly1"
- set "DstDir=D:\111
- if not exist "%DstDir%" md "%DstDir%"
- for /d %%i in (%file_name%) do (
- for /f "delims=*" %%a in ('dir /b /s /a-d "%%i.jpg"') do (
- set "_path=%%~dpa"
- setlocal enabledelayedexpansion
- if /i "!_path:%DstDir%=!" equ "!_path!" (
- set "_path=!_path:%~dp0=!"
- set "_path=!_path:\=-!"
- if not exist "%DstDir%\!_path:~0,-1!\" md "%DstDir%\!_path:~0,-1!\"
- echo Y|move "%%a" "%DstDir%\!_path:~0,-1!\%%~nxa"
- )
- endlocal
- )
- )
- pause
复制代码
|