如何在 Ant 脚本中的复制任务中使用 for 循环



>我有一个文件,它有一些变量,我想将每一行从这里复制到其他文件,除了类型=密码的行。

下面是示例文件。

<Environment xsi:type="amxdata:Environment" name="@AMX_ENVIRONMENT_NAME@">  
    <SVar xsi:type="amxdata_base:SubstitutionVariable" name="FF_JDBC_USERNAME" type="String" value="@SVAR_ENV_JDBC_USERNAME@" />
    <SVar xsi:type="amxdata_base:SubstitutionVariable" name="FF_JDBC_PASSWORD" type="Password" value="@SVAR_ENV_JDBC_PASSWORD@" />
        <SVar xsi:type="amxdata_base:SubstitutionVariable" name="MON_JMS_USERNAME" type="String" value="@MON_EMS_USER@" />
    <SVar xsi:type="amxdata_base:SubstitutionVariable" name="MON_JMS_PASSWORD" type="Password" value="@MON_EMS_PASSWORD@" />        
    </Environment>

输出文件:

<Environment xsi:type="amxdata:Environment" name="@AMX_ENVIRONMENT_NAME@">  
    <SVar xsi:type="amxdata_base:SubstitutionVariable" name="FF_JDBC_USERNAME" type="String" value="@SVAR_ENV_JDBC_USERNAME@" />
        <SVar xsi:type="amxdata_base:SubstitutionVariable" name="MON_JMS_USERNAME" type="String" value="@MON_EMS_USER@" />
</Environment>

这就是我完成你的任务的方式。 它将in.xml读入属性xml-content排除带有type="Password"的行,并将新内容打印到out.xml中。

<target name="strip-passwords">
  <loadfile property="xml-content" srcFile="in.xml" >
    <filterchain>
      <linecontainsregexp negate="true"> 
        <regexp pattern="Qtype=&quot;Password&quot;E"/> 
      </linecontainsregexp>
    </filterchain>
  </loadfile>
  <echo message="${xml-content}" file="out.xml"/>
</target>

相关内容

  • 没有找到相关文章

最新更新