假设我有一个目录,其中包含多个具有相同名称前缀和时间戳的文件,例如
my-directory:
- file-0749
- file-1253
- file-2304
如何告诉ANT从我的目录中选择最新修改的文件(在这种情况下,这将是文件-2304)?
答案 0 :(得分:17)
您可以使用TimestampSelector
中的ant-contrib任务执行此操作。
<timestampselector property="latest.modified">
<path>
<fileset dir="${my-directory.dir}">
<include name="file-*" />
</fileset>
</path>
</timestampselector>
<echo message="${latest.modified}" />
答案 1 :(得分:0)
找到了没有其他库的方法:
<copy todir="${tmp.last.modified.dir}">
<last id="last.modified">
<sort>
<date />
<fileset dir="${my.dir}" />
</sort>
</last>
</copy>
<echo message="last modified file in ${my.dir}: ${ant.refid:last.modified}" />
您可以像echo任务一样直接使用ant.refid:last.modified
。不要忘记删除tmp.last.modified.dir
。