温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

批处理如何实现根据文件内容进行重命名操作

发布时间:2021-09-30 14:50:58 来源:亿速云 阅读:144 作者:小新 栏目:开发技术

这篇文章将为大家详细讲解有关批处理如何实现根据文件内容进行重命名操作,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

我想实现以下的目的:
首先,我有个.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

关于“批处理如何实现根据文件内容进行重命名操作”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI