如何仅在Ant中列出一级子目录



使用Ant,如何仅从第一级列出子文件夹,而不从目录树中列出?

说我有:

dir1
-- dir21
----dir211
-- dir22
<dirset dir="dir1"/>

将列出包括dir211在内的所有目录。我该如何避免这种情况?

这样使用目录集:

<dirset dir="dir" includes="*"/>


<dirset dir="dir1">
 <include name="*"/>
</dirset>

评论后编辑

includes attributenested include name应该是等价的,这里有一些
在我的windows机器上工作的片段,给定C:\foo\bar:

<project>
 <echo>
    ${ant.version}
    ${java.version}
    ${os.name}
 </echo>
 <dirset dir="c:/foo" includes="*" id="foobar" />
 <echo>${toString:foobar}</echo>

 <dirset dir="c:/foo" id="foobaz">
  <include name="*" />
 </dirset>
 <echo>${toString:foobaz}</echo>
</project>

输出:

Buildfile: C:rosebudAntTesttryme.xml
     [echo]     Apache Ant(TM) version 1.8.2 compiled on December 20 2010
     [echo]     1.7.0_02
     [echo]     Windows 7
     [echo]  
     [echo] bar
     [echo] bar
BUILD SUCCESSFUL

我想在目录集中包含一个日期选择器,只选择根目录的子目录,这意味着我不能使用includes="*"。我的解决方案是使用<depth>选择器

<dirset dir="/myroot" excludes="*/*/**">
   <date datetime="${cuttoff_time}"
         pattern="${timeformat}"
         when="before"
         checkdirs="true" />
   <depth max="1" />
</dirset>

相关内容

  • 没有找到相关文章

最新更新