考院对研究生考试文件名命名规则为:
考场名称\“电子标签+考试开始时间” :81\冀邯**81201412270800.mpg”
修改为:“单元名称+考试开始时间”
27号上午为:第1单元 下午为:第2单元
28号上午为:第3单元 下午为:第4单元
所以:81\第1单元201412270800.mpg
题解:
Step1:获取原文件名称fileName
Step2:获取日期时间如2708,27号8点dateTime
Step3:如果日期时间小于等于2712 标签tab:第1单元
如果>=2713 且<=2718 标签tab:第2单元
如果>=2808 且<=2812 标签tab:第3单元
如果>=2813 且<=2818 标签tab:第4单元
Step4: 拼接新文件名:newFileName:tab+开始时间
Step5:重命名:rename fileName newFileName
bat代码:creatChangeFileName.bat
@echo off
SetLocal EnableDelayedExpansion
echo 开始生成
echo 开始生成>>newName.log
set /a dirCount=0
for /f %%i in ('dir /b/ad') do (
set /a dirCount=dirCount+1
set /a fileCount=0
for /f %%j in ('dir /b %%i') do (
set /a fileCount=fileCount+1
set folder=%%i
set fileName=%%j
set dateTime=!fileName:~-10,4!
if !dateTime! LEQ '2712' (
set tab=第1单元
) else (
if !dateTime! LEQ '2718' (
set tab=第2单元
) else (
if !dateTime! LEQ '2812' (
set tab=第3单元
) else (
set tab=第4单元
)
)
)
set newFileName=!tab!!fileName:~-16!
echo rename !folder!\!fileName! !newFileName!>>changeName.bat.txt
echo !folder!\!fileName!_!tab! !fileCount! >>newName.log
)
echo ********>>newName.log
echo !folder! !dirCount!>>newName.log
echo 共 !fileCount! 个文件 >>newName.log
echo ********>>newName.log
)
echo 共 !dirCount! 个文件夹>>newName.log
echo 生成完毕>>newName.log
echo 生成完毕
pause
利用上篇文章里面的copy.bat拷贝考试视频到移动硬盘
并用big.bat测试每个文件夹大小和count.bat测试每个文件夹下文件数量,来保证考场文件的视频完整性
然后把本bat文件拷贝到移动硬盘下运行
会生成两个文件:
文件1:newName.log
首先打开newName.log,里面统计了移动硬盘目录下多少个文件夹,每个文件夹多少个视频文件,每个视频文件重命名后对应的单元名称
简单查看无误后
文件2:changeName.bat.txt
修改该文件后缀名为:changeName.bat
然后运行
然后查看每个文件夹底下的文件,重命名成功