关于cmd命令替换文本文件某一段内容?

就是我有个txt文件,里面有一行时间(小时加分钟)time=09:30,现在我想替换后面的时间为当前系统时间再加10分钟,请问有什么方法可以实现?... 就是我有个txt文件,里面有一行时间(小时加分钟)time=09:30,现在我想替换后面的时间为当前系统时间再加10分钟,请问有什么方法可以实现? 展开
 我来答
陈哥深惠通勤
2011-12-30 · TA获得超过1175个赞
知道小有建树答主
回答量:1909
采纳率:33%
帮助的人:825万
展开全部
@echo off
setlocal enabledelayedexpansion
set time=%time:~0,5%
for /f "delims=" %%i in (1.txt) do (
echo %%i|findstr /i "time"
if !errorlevel! equ 0 (echo time=%time%>>2.txt)else (echo %%i>>temp.txt))
del /q 1.txt&&move temp.txt 1.txt
将这个保存为bat文件,放在你的TXT文件同一目录。其中1.txt为你的原文件。
453625978
2011-12-30 · TA获得超过3591个赞
知道大有可为答主
回答量:2445
采纳率:0%
帮助的人:2983万
展开全部
@echo off&SetLocal EnableDelayedExpansion
Set hour=%Time:~,2%
Set minute=%Time:~3,2%
Set /a minute+=10
::以下代码处理两个临界点:分钟数为50-59,小时数为23
Set /a n=(minute/60)
If %n%==1 (
Set /a hour+=1 & Set /a minute%%=60
Set /a h=!hour!%%24
If !h!==0 Set hour=0
Set str=!hour!:!minute!
) Else (
Set str=%hour%:%minute%
)
::以下代码替换文本内容,假设要处理的文本为1.txt
(For /f "delims=" %%i in (1.txt) do (
echo %%i| Find /i "time=" >nul
If !errorLevel!==0 (echo time=%str%) Else (echo %%i)
))>11.txt
start 11.txt
pause
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式