批处理应用根据文件内容进行重命名操作
我想实现以下的目的:
首先,我有个.dat文件,名字是固定的,需要更改这个文件名.
.dat第1行的内容是: 10107xxxxxx,代表的意思是2007.01.01,后面的x内容不固定.如果是1~9月,则第1个字符是空的.
现在要根据这行内容来改文件名.比如10107XXXXXX,改为c01-0101.cvs.
110107xxxxxx,改为c01-1101.cvs
请问该怎么写这个BAT文件.
分析:
读出第一行内容到一变量
区变量的第5个字符,可以判断是否为0
1)如果是0,取变量前2位为月份,否则取前1位,并前缀0,作为月份
2)如果是0,取变量3-4位为月份,否则取2-3位,作为日
解答:
@echo off
for %%i in (*.dat) do call :goren %%i
goto end
:goren
set /p firstln=%1
set year=%firstln:~4,1%
if /i %year% GTR 0 (set month=0%firstln:~0,1% set day=%firstln:~1,2%) else (
set month=%firstln:~0,2% set day=%firstln:~2,2%
)
ren %1 c01-%month%%day%.cvs
goto end
:end
您可能感兴趣的文章: 批处理ren重命名的方式 C#使用OpenCv图像批处理并改变图片大小并且重命名 Python批处理删除和重命名文件夹的实例 重命名批处理python脚本 文件夹取其名称前两位重命名的批处理代码 批处理重命名特殊文件名的代码 全盘搜索指定文件并拷贝到指定位置[自动重命名]的批处理 用批处理实现将文件以数字重命名的代码 用批处理重命名文本文件名的代码 重命名administrator账号的批处理文件 批处理应用:恢复Mcafee重命名的可疑病毒文件扩展名 批处理应用:根据文件内容进行重命名操作 批处理重命名系列案例代码
相关文章
批处理应用根据文件内容进行重命名操作 我想实现以下的目的: 首先,我有个.dat文件,名字是固定的,需要更改这个文件名. .dat第1行的内容是:10107xxxxxx,代表的意思是2007.01.01,后面的x内容不固定.如果是1~9月,则第1个字符是空的. 现在批处理,应用,根据,文件,...
批处理应用根据文件内容进行重命名操作 我想实现以下的目的: 首先,我有个.dat文件,名字是固定的,需要更改这个文件名. .dat第1行的内容是:10107xxxxxx,代表的意思是2007.01.01,后面的x内容不固定.如果是1~9月,则第1个字符是空的. 现在批处理,应用,根据,文件,...