使用批处理程序批量修改txt文件中的日期

有txt文件:a.txt,b.txt.c.txt;3个文件内容一样,其中第n行均为:“starttime:YYYY-MM-DD,endtime:yyyy-mm-dd”希望... 有txt文件:a.txt,b.txt.c.txt;
3个文件内容一样,其中第n行均为:“start time:YYYY-MM-DD,end time:yyyy-mm-dd”
希望用户手动输入开始和结束时间,自动替换3个txt文件中的start time和end time
展开
 我来答
朴素且可爱灬小喵1
2015-12-30 · TA获得超过2902个赞
知道大有可为答主
回答量:1713
采纳率:89%
帮助的人:519万
展开全部
您这个做替换有点麻烦,但是还是可以实现您要实现的目标。把下面的批处理存为changedate.bat与a.txt、b.txt、c.txt放在同一个文件夹下面,让后双击运行即可。
@echo off
@setlocal enabledelayedexpansion
@set /p st=Input Start Time:
@set /p et=Input End Time:
@if exist _a.txt @del _a.txt
@if exist _b.txt @del _b.txt
@if exist _c.txt @del _c.txt
@set n=1
@for /f "delims=" %%j in (a.txt) do (
@if not !n!==3 (
@echo %%j >>_a.txt
) else (
@echo start time:!st!,end time:!et!>>_a.txt
)
@set /a n=n+1
)
@set n=1
@for /f "delims=" %%j in (b.txt) do (
@if not !n!==3 (
@echo %%j >>_b.txt
) else (
@echo start time:!st!,end time:!et!>>_b.txt
)
@set /a n=n+1
)
@set n=1
@for /f "delims=" %%j in (c.txt) do (
@if not !n!==3 (
@echo %%j >>_c.txt
) else (
@echo start time:!st!,end time:!et!>>_c.txt
)
@set /a n=n+1
)
@if exist _a.txt @del a.txt&ren _a.txt a.txt
@if exist _b.txt @del b.txt&ren _b.txt b.txt
@if exist _c.txt @del c.txt&ren _c.txt c.txt

该批处理已在Win7下验证通过。另外,由于我这会儿时间有限,该批处理的写法有点蠢,如果您有非常多的txt您可以再问,我可以帮您把这个批处理改成更通用的版本。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式