逃避蚂蚁变量中的多个美元符号

时间:2013-10-08 21:26:40

标签: ant escaping

我们有一个带有以下任务的ant脚本:

<exec executable="svn">
  <arg line="export ${url} ${path} --username ${svn.username} --password ${svn.password}"/>
</exec>

直到我们的一位用户创建了一个带有三个美元符号的密码,就像“abcdef $$$”一样,这种情况一直很好,在这一点上,蚂蚁失败了。

如何逃避svn.password以便安全地获取任何价值?

1 个答案:

答案 0 :(得分:1)

如果您为每个参数使用单独的arg元素而不是一个line,它可能会更好:

<exec executable="svn">
  <arg value="export"/>
  <arg value="${url}"/>
  <arg value="${path}"/>
  <arg value="--username"/>
  <arg value="${svn.username}"/>
  <arg value="--password"/>
  <arg value="${svn.password}"/>
</exec>