删除指定时间之前的文件
我们的自动测试会生成报告,原来的实现比较简单,就是删除32天前的那个目录,问题是可能某些天的build会失败,那么task不会被调用,这样可能保存的历史记录大于31了,偏离我们的目的了。查看了下ant的手册,发现有一个selector可以用,得到如下的内容:
<target name="backup-report">
<tstamp>
<format locale="en" property="deletedDir" pattern="MM/dd/yyyy hh:mm aa" offset="-32" />
</tstamp>
<tstamp>
<format property="thisDir" pattern="yyyy-MM-dd" />
</tstamp>
<mkdir dir="${reports-dir}/${thisDir}"/>
<copy todir="${reports-dir}/${thisDir}">
<fileset dir="${report-dir}">
<include name="**/*"/>
</fileset>
</copy>
<delete>
<fileset dir="${reports-dir}" includes="*">
<date datetime="${deletedDir}" when="before"/>
</fileset>
</delete>
</target>
问题是这个似乎不能删除目录,只有1.6.2以后才支持删除目录。
最终一个简单的方法就是在最开始就删除32天前的目录,这样就不会有太老的记录保留下来了。
作者: Cherami
原载: 删除指定时间之前的文件
版权所有。转载时必须以链接形式注明作者和原始出处及本声明。
日志评价
相关日志
- 暂时没有相关日志。
随机日志
添加到网摘
[del.icio.us] [新浪 VIVI] [365key] [YouNote] [博采中心] [Poco] [SOHU狐摘] [天极网摘] [和讯网摘]喜欢这个插件?

暂时没有评论
发表评论 | RSS订阅 | 反向链接