覆盖属性文件中的一个值



我有一个属性文件:

custom.properties

这个属性文件的内容是:

id=sf2j2345kkklljhlaasfsdfafsf543
name=SOME_NAME

id的值是一个长随机字符串。

我想做一个Ant脚本来替换/覆盖 id的值到另一个,我尝试了Ant <replace>语法:

<target name="change-id">
      <replace file="custom.properties" token="id" value="aaa" />
</target>

我运行ant change-id,属性文件的内容变成:

aaa=sf2j2345kkklljhlaasfsdfafsf543
name=SOME_NAME

键"id"被替换,而不是它的值。但是我需要将值替换为"aaa",如何在Ant中实现这一点?

请不要建议我token设置为id的随机值,因为该值是随机生成并放在那里的。我只想用Ant脚本覆盖"id"的随机值,如何实现这一点?

您可以使用replaceregexp任务来完成。试着像下面这个例子

那样做

conf.ini (utf - 8)

aaa=sf2j2345kkklljhlaasfsdfafsf543
name=SOME_NAME

build . xml

<project name="regexp.replace.test" default="test">
    <target name="test">
        <replaceregexp file="conf.ini" match="^aaa=.*" replace="aaa=newId" encoding="UTF-8" />
    </target>
</project>

我不知道这个正则表达式是否正确,但你可以这样做

相关内容

  • 没有找到相关文章