Delete

Description

Deletes a single file, a specified directory and all its files and subdirectories, or a set of files specified by one or more FileSets. When specifying a set of files, empty directories are not removed by default. To remove empty directories, use the includeEmptyDirs attribute.

If you use this task to delete temporary files created by editors and it doesn't seem to work, read up on the default exclusion set in Directory-based Tasks, and see the defaultexcludes attribute below.

Parameters

Attribute Description Required
file The file to delete, specified as either the simple filename (if the file exists in the current base directory), a relative-path filename, or a full-path filename. At least one of the two, unless a <fileset> is specified.
dir The directory to delete, including all its files and subdirectories.
Note: dir is not used to specify a directory name for file; file and dir are independent of each other.
WARNING: Do not set dir to ".", "${basedir}", or the full-pathname equivalent unless you truly intend to recursively remove the entire contents of the current base directory (and the base directory itself, if different from the current working directory).
verbose Show the name of each deleted file ("true"/"false"). Default is "false" when omitted. No
quiet If the specified file or directory does not exist, do not display a diagnostic message (unless Ant has been invoked with the ‑verbose or ‑debug switches) or modify the exit status to reflect an error. When set to "true", if a file or directory cannot be deleted, no error is reported. This setting emulates the -f option to the Unix rm command. Default is "false". Setting this to "true" implies setting failonerror to "false". No
failonerror Controls whether an error (such as a failure to delete a file) stops the build or is merely reported to the screen. Only relevant if quiet is "false". Default is "true". No
includeEmptyDirs Set to "true" to delete empty directories when using filesets. Default is "false". No
includes Deprecated. Use <fileset>. Comma- or space-separated list of patterns of files that must be deleted. All files are relative to the directory specified in dir. No
includesfile Deprecated. Use <fileset>. The name of a file. Each line of this file is taken to be an include pattern No
excludes Deprecated. Use <fileset>. Comma- or space-separated list of patterns of files that must be excluded from the deletion list. All files are relative to the directory specified in dir. No files (except default excludes) are excluded when omitted. No
excludesfile Deprecated. Use <fileset>. The name of a file. Each line of this file is taken to be an exclude pattern No
defaultexcludes Indicates whether default excludes should be used or not ("yes"/"no"). Default excludes are used when omitted. No

Examples

  <delete file="/lib/ant.jar"/>

deletes the file /lib/ant.jar.

  <delete dir="lib"/>

deletes the lib directory, including all files and subdirectories of lib.

  <delete>
    <fileset dir="." includes="**/*.bak"/>
  </delete>

deletes all files with the extension .bak from the current directory and any subdirectories.

  <delete includeEmptyDirs="true">
    <fileset dir="build"/>
  </delete>

deletes all files and subdirectories of build, including build itself.


Copyright © 2000-2002,2004 The Apache Software Foundation. All rights Reserved.