Board logo

标题: [求助]请教如何对同一个文件的多个字符进行替换? [打印本页]

作者: xnetsmile     时间: 2010-9-6 11:50    标题: [求助]请教如何对同一个文件的多个字符进行替换?

请教如何对同一个ini文件的多个指定字符进行批处理替换? 假如ini文件的内容如下:
a=100
b=200
c=300
d=400
需要把"b=200"替换成“b=210”,把"d=400"替换为"d=410",b,d的先后位置不固定。 替换后的结果:
a=100
b=210
c=300
d=410
请指点,谢谢!

作者: asnahu     时间: 2010-9-6 13:21
sed "/^b/s/200/210/; /^d/s/400/410/" urfile

作者: xnetsmile     时间: 2010-9-6 18:39
'sed' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

作者: xnetsmile     时间: 2010-9-6 19:01
希望代码更通用,我之前在论坛搜索,模仿别人用以下代码做替换:
for /f "delims=" %%l in (s.ini) do (
 echo.%%l | find /i "b=210">nul && echo b=210||echo %%l)
不过只能做一个字符的替换。 想请教一下如果要做2个或2个以上的字符替换,不用sed可以怎样写?

作者: xnetsmile     时间: 2010-9-7 09:02
顶一下,想学习一下在这种情况下怎样做条件判断。

作者: 726842270     时间: 2010-9-7 21:00

作者: xnetsmile     时间: 2010-9-7 22:27
Originally posted by 726842270 at 2010-9-7 21:00: www.bathome.net ...
感谢回复,不过能否具体指点一下? 我想用for语句做两次判断,但是判断的结果有误,所以在此请教,望不吝指教!