Apache Ant Tasks - Move

描述

Move 移动任务将文件移动到新文件或目录,或将文件集合移动到新目录。 默认情况下,如果目标文件已经存在,它会被覆盖。 关闭覆盖时,仅当源文件比目标文件新或目标文件不存在时才会移动文件。


属性

序号 属性 & 描述
1

File

要移动的文件或目录。

2

Preservelastmodified

为移动的文件提供与原始源文件相同的最后修改时间。

3

Tofile

要移动到的文件。

4

Todir

要移动到的目录。

5

Overwrite

即使目标文件较新,也要覆盖现有文件。

6

Force

覆盖只读目标文件。

7

Filtering

指示是否应在移动期间进行 token 令牌过滤。

8

Flatten

忽略源目录的目录结构,将所有文件复制到由 todir 属性指定的单个目录中。

9

IncludeEmptyDirs

复制嵌套文件集包含的空目录。

10

Failonerror

如果为 false,则在要复制的文件不存在或嵌套文件集之一指向不存在的目录或移动时发生错误时记录警告消息,但不停止构建。

11

Quiet

如果 true 且 failonerror 为 false,则当要复制的文件不存在或嵌套文件集之一指向不存在的目录或复制时发生错误时,不记录警告消息。

12

Verbose

记录正在移动的文件。

13

Encoding

过滤复制文件时假定的编码。

14

Outputencoding

写入文件时使用的编码。

15

Enablemultiplemappings

如果为 true,则任务将处理给定源路径的所有映射。 如果为 false,则任务将仅处理第一个文件或目录。 此属性仅在存在映射器子元素时才相关。

16

Granularity

在确定文件过期之前给予的毫秒数。 这是必需的,因为并非每个文件系统都支持将上次修改时间跟踪到毫秒级别。 如果源文件和目标文件位于时钟不同步的不同机器上,这也很有用。

17

performGCOnFailedDelete

如果 Ant 未能删除文件或目录,它将重试该操作一次。 如果此标志设置为 true,它将在重试删除之前执行垃圾收集。 已知将此标志设置为 true 可以解决 Windows 上的一些问题(默认为 true),但也适用于驻留在 NFS 共享上的目录树。


用法

示例

使用以下内容创建 build.xml −

<?xml version="1.0"?>
<project name="TutorialPoint" default="info">
   <target name="info">
      <move file="message.txt" tofile="message.txt.moved"/>
   </target>
</project>

输出

在上述构建文件上运行 Ant 会产生以下输出 −

F:\tutorialspoint\ant>ant
Buildfile: F:\tutorialspoint\ant\build.xml

info:
   [move] Moving 1 file to F:\tutorialspoint\ant

BUILD SUCCESSFUL
Total time: 0 seconds