使用批处理程序批量修改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 展开
3个文件内容一样,其中第n行均为:“start time:YYYY-MM-DD,end time:yyyy-mm-dd”
希望用户手动输入开始和结束时间,自动替换3个txt文件中的start time和end time 展开
1个回答
展开全部
您这个做替换有点麻烦,但是还是可以实现您要实现的目标。把下面的批处理存为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您可以再问,我可以帮您把这个批处理改成更通用的版本。
@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您可以再问,我可以帮您把这个批处理改成更通用的版本。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询