中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-12 01:41
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [已解决]批处理如何根据条件修改文本中的内容? 查看 1,310 回复 4
楼 主 [已解决]批处理如何根据条件修改文本中的内容? 发表于 2010-07-01 16:11 ·  中国 广东 深圳 罗湖区 电信
初级用户
积分 29
发帖 29
注册 2008-11-18 16:19
17年会员
UID 131353
性别 男
状态 离线
现在有一个文本文件config.ini,记录了一些值的状态:
A=N
B=N
C=N

我现在想执行完a.bat后继续执行另一个批处理core.bat, 修改config.ini中A=Y,其他值不变.
(同理,用b.bat调用core.bat,修改config.ini中对应的值b=Y,其他值不变.)

该怎样实现啊?高手请赐教

[ Last edited by boy on 2010-7-2 at 14:24 ]
2 发表于 2010-07-02 00:52 ·  中国 广东 深圳 电信
初级用户
积分 38
发帖 32
注册 2010-04-07 22:43
16年会员
UID 164009
性别 男
状态 离线
我也想知道
能在文本任意处新增插入.修改.删除.移动最好
3 发表于 2010-07-02 06:19 ·  中国 上海 虹口区 电信
中级用户
★★
积分 248
发帖 126
注册 2008-05-30 17:18
18年会员
UID 120118
性别 男
状态 离线
@echo off
echo A=Y >config.ini
echo B=Y >>config.ini
echo c=Y >>config.ini
4 这样写不行 发表于 2010-07-02 09:31 ·  中国 广东 深圳 罗湖区 电信
初级用户
积分 29
发帖 29
注册 2008-11-18 16:19
17年会员
UID 131353
性别 男
状态 离线
Originally posted by jh1688 at 2010-7-2 06:19:
@echo off
echo A=Y >config.ini
echo B=Y >>config.ini
echo c=Y >>config.ini


这样写不行,我是想a.bat调用core.bat的时候只改变A的值,其他值不变.同理,b.bat调用core.bat的时候只改变B的值,象上面这样写的话,会把所有值都改变.
5 发表于 2010-07-03 05:48 ·  中国 台湾 台湾宽频通讯顾问股份有限公司
初级用户
★★
积分 68
发帖 64
注册 2009-05-23 20:43
17年会员
UID 145803
性别 男
状态 离线
ren config.ini config_bk.ini
sed --text -s "1s/^A=N/A=Y/" config_bk.ini > config.ini

sed是第三方工具,可到本论坛下载

[ Last edited by pdanniel66 on 2010-7-3 at 05:50 ]
论坛跳转: