标题: 任何批处理替换文本指定行【已解决】
[打印本页]
作者: jzsgyml
时间: 2010-2-23 10:05
标题: 任何批处理替换文本指定行【已解决】
某文件夹下有很多配置文件,大体内容差不多的,现在修改每个文件中的一个值,但是这个值在文本中多次存在,如何替换?
以下是每个文件的内容格式:
[a]
...
run=TRUE
...
run=TRUE
[C]
...
run=TRUE
现在要将[C]下面的 run=TRUE 替换为 run=FALSE
而且该文件夹所有文件都要替换,该文件夹文件命名为465647.INI。都是数字命名
[ Last edited by jzsgyml on 2010-2-26 at 15:04 ]
作者: sysplay 时间: 2010-2-25 21:20
@echo off
setlocal enabledelayedexpansion
for %%i in (*.ini) do (
set flag=0
for /f %%j in (%%i) do (
set str=%%j
if /i "!str!"=="[C]" set flag=1
if "!flag!"=="1" if /i "!str!"=="run=TRUE" (
set "str=run=FALSE"
set flag=0
)
echo !str!>>_%%i
)
rename %%i %%i.txt
rename _%%i %%i
)