欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Ant复制文件

程序员文章站 2022-05-23 21:03:14
...
<?xml version="1.0" encoding="utf8"?>
<project name="FileOperation" basedir="." default="init">
		<description>File and Directory Operation</description>
		
		<property name="fileDir" value="temp"/>
		
		<target name="init">
				<echo message="-------init target run--------"/>
				<delete dir="${ant.project.name}"/>
				<delete dir="${fileDir}"/>
				<delete dir="file"/>
				<echo message="------init target finished----"/>
		</target>
		
		<target name="showInfo">
				<echo message="project name is ${ant.project.name}"/>
		</target>
		
		<!--创建目录-->
		<target name="mkdir">
				<echo message="-------mkdir target run--------"/>
				<mkdir dir="${ant.project.name}" />
				<mkdir dir="${fileDir}/xml" />
				<mkdir dir="file"/>
				<echo message="-------mkdir target finished--------"/>
		</target>
		
		<!-- 复制文件 -->
		<target name="copyFileAndDirs">
				<echo message="-------copyFileAndDirs target run--------"/>
				<!--复制单个文件-->
				<!--
				<copy file="myprop.properties" tofile="${fileDir}/my.properties"/>
				-->
				<!--复制文件到目录-->
				<!--
				<copy file="myprop.properties" todir="${fileDir}"/>
				-->
				<!--复制目录到目录-->
				<!-- flattern表示是否丢弃源文件的目录结构
				(如果源文件夹中包含多级目录,这些目录也会被建立在目标文件夹中)
				-->
				<!--
				<copy todir="${fileDir}">
					<fileset dir="file"/>
				</copy>
				-->
				
				<!--复制目录到目录,include使用-->
				<copy todir="${fileDir}">
					<fileset dir="./file">
						<!-- 此时只会拷贝file目录下的a这个空目录 -->
						<!--
						<include name="a" />
						-->
						<!-- 此时会递归拷贝file目录下a目录下的文件和文件树
						<include name="a/" />
						-->
						<!-- 此时只会拷贝a目录下的文件和第一级空目录b,b是个空目录
						<include name="a/*" />
						-->
						<!-- 递归拷贝a目录下的所有文件和目录树
						<include name="a/**" />
						-->
						<!-- 和a/*情况一样
						<include name="a/***" />
						-->
					</fileset>
				</copy>
				
				<!--复制文件集合到目录-->
				<!--
				<copy todir="file">
					<fileset dir=".">
							<exclude name="*.xml"/>
					</fileset>
				</copy>
				-->
				<!--复制文件集合到目录2-->
				<!--
				<copy todir="${ant.project.name}">
					<fileset dir="." excludes="*.xml"/>	
				</copy>
				-->
				<echo message="-------copyFileAndDirs target finished--------"/>
		</target>
		
		<!-- 删除文件以及目录 -->
		<target name="delFileAndDir">
				<echo message="-------delFileAndDir target run--------"/>
				<delete dir="file/" />
				<echo message="-------delFileAndDir target finished--------"/>
		</target>
		
</project>