我尝试删除'foo / dir'中名为'public- someHash '的目录。 'SomeHash'是动态创建的(例如'dsflsdfn')并且总是新的。我试图使用'fileTree'但目录仍然存在。有我的代码:
tasks.create(name: 'delete', type : Delete) {
delete fileTree(dir: 'foo/dir/', include: 'public-*/**')
}
我的面具有什么问题?
UDP:我在Ant中有类似的任务,一切正常:
<target name="delete">
<delete includeemptydirs="true">
<fileset dir="foo/dir/">
<include name="public-*/**"/>
</fileset>
</delete>
</target>
答案 0 :(得分:0)
这是一种方法,但不是最优雅的方式:
task myDelete(type: Delete) {
def files = new HashSet()
new File('foo/dir').eachFile { file ->
if (file.isDirectory() && (file.name ==~ /public-.*/)) {
files << file
}
}
delete files
}