想要使用ant替换macos上的txt文件中的值。 我使用了下面的代码,但它给出错误:“该类型不支持嵌套文本数据(”“)”。exec可执行文件sed
<exec executable="sed">
<arg value="s/old/new/g" />
<arg value="$MY_FILE" />
</exec>.
如何替换变量的值,我用替换为Windows上的文件,它的工作原理。
想要使用ant替换macos上的txt文件中的值。 我使用了下面的代码,但它给出错误:“该类型不支持嵌套文本数据(”“)”。exec可执行文件sed
<exec executable="sed">
<arg value="s/old/new/g" />
<arg value="$MY_FILE" />
</exec>.
如何替换变量的值,我用替换为Windows上的文件,它的工作原理。
也许这可以帮助
蚂蚁的contrib PropertyRegex
对输入的字符串的正则表达式运算,并将结果设置为一个属性
http://ant-contrib.sourceforge.net/tasks/tasks/propertyregex.html
也许这是一个有点晚,但我只是发现了这个问题。希望我的解决方案至少可以帮助其他人。
缺少一个参数。 sed在命令行上需要-e“你的表达”-f“/ path/to /你的脚本文件”。在使用蚂蚁的情况下,您希望直接更改文件(sed语音中的“内部”),而不是不同的输入/输出文件。所以你需要添加-i(或者更简单,将-e更改为-ie)。因此,正确的调用将是:
<exec executable="sed">
<arg value="-ie" />
<arg value="s/old/new/g" />
<arg value="$MY_FILE" />
</exec>