(转)Ant 学习札记(二)
注意:本节笔记中所使用的缩写/名词:
============================
运行结果说明:
复制源文件([project.basedir]/myFile.txt)到同目录下([project.basedir]/), 并将复制文件命名为"myCopy.txt".
============================
运行结果说明:
复制源文件([project.basedir]/myFile.txt)到指定目录([project.basedir]/anydir/other/dir)下,复制文件名同源文件名.
============================
运行结果说明:
将源目录([project.basedir]/new/dir)下的内容复制到目标目录([project.basedir]/anydir/other/dir)下.
============================
运行结果说明:
这里需要说一下fileset.fileset的属性excludes的值或者其包含的元素exclude的name属性的值都包含"*"号, 在这里"*"号是什么意思呢?
"*"是我们常见的通配符, *.txt就代表了所有的.txt文件, 但单个*所代表的内容中是不能包含slash (/) (或者back-slash?)的。所以,如果是:
则表示include(包含) ${lib.dir}文件夹(不包括其子文件夹)下的所有.jar文件.
两个星号**则可以代表包含slash (或者back-slash?)的任意内容,用在路径里面那就是recursive(递归)的意思了。所以:
表示的是include ${lib.dir}及其子文件夹下的所有.jar文件.
include是包含的意思, exclude是不包含,除...之外的意思.
现在来说下运行结果, 将源目录([project.basedir]/new)下,包括其子目录在内的所有非.txt文件复制到目标目录([project.basedir]/otherdir/dir)下.
============================
运行结果说明:
将源目录([project.basedir]/new)下的文件及子目录下的文件复制到目标目录(([project.basedir]/otherdir/dir))下, 并且将所有复制的文件或者文件夹的名称的最末添加.bak.
这里需要说一下, 操作结束后会存在一个名称被加上.bak的空文件夹. 同时还会存在一个没有添加.bak的文件夹, 该文件夹包含所有附加上.bak 的文件.
[PS]我表述不明白, 大家最好自己测试一下, 看看结果, 就有了直观的印象了
============================
运行结果说明:
将源目录([project.basedir]/new)下的文件及子目录下的文件复制到目标目录(([project.basedir]/otherdir/dir))下, 并且将所有被复制的文件的内容中包含@TITLE@的部分替换为Foo Bar
注意:本节笔记中所使用的缩写/名词:
build.xml:
============================
运行结果说明:
删除[project.basedir]/lib/dom4j-1.6.1.jar文件.
============================
运行结果说明:
删除[project.basedir]/lib目录.
============================
运行结果说明:
删除当前文件夹下的所有txt文件, 包括子目录中的.关于**的问题在上一篇学习笔记中有说明.
============================
运行结果说明:
目录[project.basedir]/build及其下的所有内容都被删除.
============================
运行结果说明:
目录[project.basedir]/build下的所有内容都被删除. build目录被保留下来.
============================
运行结果说明:
删除[project.basedir]/build下的所有.svn目录