使用 Ant 删除目录仅删除其内容
Deleting driectory deletes only its content using Ant
我正在尝试使用 ant 删除目录及其内容,但只有内容被删除。该目录仍然存在。
我错过了什么?
<delete failonerror="false">
<dirset dir="C:\profile${profileName}\installedApps\Cell${profileName}">
<include name="${projectName}**/*"/>
</dirset>
</delete>
只需使用 delete
任务并将 dir
属性设置为父目录:
<delete dir="C:\profile${profileName}\installedApps\Cell${profileName}" />
编辑:针对您的评论,以下是删除父目录中存在的具有特定名称模式的所有目录(及其文件)的方法。
<property name="profile.dir" location="C:\profile${profileName}\installedApps\Cell${profileName}" />
<delete>
<fileset dir="${profile.dir}" includes="${projectName}*/**/*" />
<dirset dir="${profile.dir}" includes="${projectName}*/**" />
</delete>
在 运行 删除任务之前设置 profile.dir
属性 当然是可选的,但建议这样做。
我正在尝试使用 ant 删除目录及其内容,但只有内容被删除。该目录仍然存在。 我错过了什么?
<delete failonerror="false">
<dirset dir="C:\profile${profileName}\installedApps\Cell${profileName}">
<include name="${projectName}**/*"/>
</dirset>
</delete>
只需使用 delete
任务并将 dir
属性设置为父目录:
<delete dir="C:\profile${profileName}\installedApps\Cell${profileName}" />
编辑:针对您的评论,以下是删除父目录中存在的具有特定名称模式的所有目录(及其文件)的方法。
<property name="profile.dir" location="C:\profile${profileName}\installedApps\Cell${profileName}" />
<delete>
<fileset dir="${profile.dir}" includes="${projectName}*/**/*" />
<dirset dir="${profile.dir}" includes="${projectName}*/**" />
</delete>
在 运行 删除任务之前设置 profile.dir
属性 当然是可选的,但建议这样做。