NAnt
![]() ![]() ![]() |
v0.85-rc1 |
[This is preliminary documentation and subject to change.]
Copies a file or set of files to a new file or directory.
Files are only copied if the source file is newer than the destination file, or if the destination file does not exist. However, you can explicitly overwrite files with the overwrite
attribute.
A <fileset> can be used to select files to copy. To use a <fileset>, the todir
attribute must be set.
Unless an encoding is specified, the encoding associated with the system's current ANSI code page is used.
An UTF-8, little-endian Unicode, and big-endian Unicode encoded text file is automatically recognized, if the file starts with the appropriate byte order marks.
Note: If you employ filters in your copy operation, you should limit the copy to text files. Binary files will be corrupted by the copy operation.
Attribute | Type | Description | Required |
---|---|---|---|
file | file | The file to copy. | False |
flatten | bool | Ignore directory structure of source directory, copy all files into a single directory, specified by the todir attribute. The default is false. |
False |
includeemptydirs | bool | Copy any empty directories included in the <fileset>. The default is true. | False |
inputencoding | Encoding | The encoding to use when reading files. The default is the system's current ANSI code page. | False |
outputencoding | Encoding | The encoding to use when writing the files. The default is the encoding of the input file. | False |
overwrite | bool | Overwrite existing files even if the destination files are newer. The default is false. | False |
todir | directory | The directory to copy to. | False |
tofile | file | The file to copy to. | False |
failonerror | bool | Determines if task failure stops the build, or is just reported. The default is true. | False |
if | bool | If true then the task will be executed; otherwise, skipped. The default is true. | False |
unless | bool | Opposite of if . If false then the task will be executed; otherwise, skipped. The default is false. |
False |
verbose | bool | Determines whether the task should report detailed build log messages. The default is false. | False |
todir
attribute must be set. Copy a single file while changing its encoding from "latin1" to "utf-8".
<copy file="myfile.txt" tofile="mycopy.txt" inputencoding="latin1" outputencoding="utf-8" />
Copy a set of files to a new directory.
<copy todir="${build.dir}"> <fileset basedir="bin"> <includes name="*.dll" /> </fileset> </copy>
Copy a set of files to a directory, replacing @TITLE@
with "Foo Bar" in all files.
<copy todir="../backup/dir"> <fileset basedir="src_dir"> <include name="**/*" /> </fileset> <filterchain> <replacetokens> <token key="TITLE" value="Foo Bar" /> </replacetokens> </filterchain> </copy>