如何通过ANT读取KV并在系统上执行命令?

时间:2012-03-14 15:48:52

标签: ant

我想将ANT's build.xml文件更新为:

  1. 从文件中读取一个值
  2. 更改系统上的链接以反映其在文件中读取的内容
  3. 假设文件包含以下格式的内容:

    Environment = dev
    

    进一步假设目录包含以下文件/链接:

    current_env_image -> qa_image.jpg
    prod_image.jpg
    qa_image.jpg
    dev_image.jpg
    

    ..其中current_env_image是指向当前图像应显示的链接。

    我想要一个ANT脚本:

    1. 读取分配给Environment的值(来自文件)和
    2. 执行创建链接以指向右侧图像的命令:
    3.   

      取消关联current_env_image

           

      ln -s $ {environment} _image.jpg current_env_image

1 个答案:

答案 0 :(得分:1)

使用Property task

可以轻松读取文件
  <property file="foo.properties"/>

reads a set of properties from a file called "foo.properties".

之后,您的变量Environment将设置为该值。

第二个问题可以通过exec task

来实现
  <exec executable="ln">
    <arg value="-s ${environment}_image.jpg image"/>
  </exec>