我想使用Ant脚本从服务器复制今天的日期日志文件。我已经尝试了以下脚本,但它是从文件夹复制所有文件。但我想复制的文件,如修改日期是今天的日期。
<project name="MyProject" default="copy" basedir=".">
<property file="${basedir}/build.properties"/>
<tstamp>
<format property="time.stamp" pattern="MM-dd-yyyy"/>
</tstamp>
<target name="copy" description="copy files">
<echo>copying files</echo>
<copy todir="D:softwareFiles${time.stamp}" >
<fileset dir="C:GatorNetEAServerlogs" >
<include name="**/*.log"/>
</fileset>
</copy>
</target>
</project>
您可以在文件集中使用日期选择器。
从手册页复制示例:
<fileset dir="${jar.path}" includes="**/*.jar"> <date datetime="01/01/2001 12:00 AM" when="before"/> </fileset>
选择在1月午夜之前最后修改的所有JAR文件2001 .
就你的情况而言,我想你应该这样做:
<tstamp/>
<echo>${DSTAMP}</echo>
<mkdir dir="${DSTAMP}"/>
<copy todir="${DSTAMP}" includeemptydirs="no">
<fileset dir=".">
<date datetime="${DSTAMP}" pattern="yyyyMMdd" when="after"/>
<include name="*"/>
</fileset>
</copy>
<tstamp>
<format property="TODAY_MY" pattern="yyyyMMddHHmmss" locale="en,UK" />
</tstamp>
<echo message="todaysDate: ${TODAY_MY}"/>
<echo message="Copy war files to Dir...."/>
<copy todir="/todir/">
<fileset dir="/fromdir/"/>
<globmapper from="*.war" to="*.war.${TODAY_MY}"/>
</copy>