日期:2014-05-17  浏览次数:21216 次

怎样写一个bat文件:读取一个文件中的内容,并进行比较
目前有个config.ini文件,其内容是:
update=yes
cop=af
我打算写个windows批处理,读取第一行,如果第一行的值为"update=no",则不做任何事情,如果
第一行的值为"update=yes",则call 1.bat,执行完"1.bat"后将"update=yes"改成"update=no".

这个应该怎么写?
谢谢

------解决方案--------------------
给你写了一个,应该是你要的,呵呵

BatchFile code

@echo off
if exist ctmp.ini del ctmp.ini
for /f "tokens=*" %%a in (config.ini) do (
if /I %%a==update=yes (
call 2.bat
echo update=no>>ctmp.ini
) else (
echo %%a>>ctmp.ini
)
)
del config.ini
ren ctmp.ini config.ini

------解决方案--------------------
BatchFile code
@echo off
set TmpFile=tmp.ini
set /p ini=<config.ini
if "%ini%" equ "update=yes" (
  call 1.bat
  >"%TmpFile%" echo update=no
  >>"%TmpFile%" echo cop=af
  move /y "%~dp0%TmpFile%" config.ini
)