
标题: [文件操作] 求助哥哥们给小弟编个批处理复制文件的,请进 [打印本页]
作者: supermantlm 时间: 2020-9-4 05:43 标题: 求助哥哥们给小弟编个批处理复制文件的,请进
文件夹结构是这样的
文件夹“一年级”下面包含班级文件夹:“一班”,“二班”,“三班”......
班级文件夹"一班" 里面包含学生姓名文件夹,”小王“,”小李“,”小张“........
每个学生姓名文件夹下面是各科成绩文件:例如”小张“文件夹下:语文成绩.jpg,数学成绩.jpg,英语成绩.jpg........ 小李文件夹下:语文成绩.jpg,数学成绩.jpg,英语成绩.jpg........
需要在一班文件夹下,编写一个批处理,提取出所有学生文件夹下的英语成绩.jpg到一个新文件夹里,文件重命名为:小王英语成绩.jpg,小李英语成绩.jpg,小张英语成绩........
感谢给予帮助的大神们
作者: yhcfsr 时间: 2020-9-4 08:44
- @echo off
- set "JpgName=语文成绩.jpg"
-
- rem =================================
- set "src=%~dp0"
- cd /d "%src%"
- for /f "delims=" %%a in ('dir /ad/b') do (
- rem get parentDir
- set curDir=%%~dpa
- call :GetParent "%%~dpa" parentDir
- setlocal enableDelayedExpansion
- pushd "%%~fa"
- for /f "delims=" %%b in ('dir/a-d/s/b "%JpgName%"') do (
- call :GetParent "%%~dpb" lastDir
- robocopy "%%~dpb\" "!curDir!!parentDir!%%~nb" "%%~nxb" >nul
- ren "!curDir!!parentDir!%%~nb\%%~nxb" "!lastDir!%%~nxb"
- )
- popd
- endlocal
- )
- pause
- exit
- :GetParent
- set d=%~1
- for /f "delims=" %%i in ("%d:~,-1%") do set %2=%%~nxi
-
- exit /b
复制代码
作者: supermantlm 时间: 2020-9-4 09:17
回复 2# yhcfsr
太感谢了!!!对我这小白来说,可惜代码看不懂~
非常感谢

欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |