2013-05-07 46 views
1

这里是我的目录结构:蚂蚁非递归文件集

module/ 
    a/ 
     foo.php 
     b/ 
      bar.php 
    b/ 
    c/ 

我想为下模块每个目录运行命令/但非递归,所以只有这些应包括:

a/ 
b/ 
c/ 

如果我这样做:

<target name="foo"> 
    <apply executable="ls"> 
     <arg value="-l" /> 
     <fileset dir="${basedir}/module/"> 
     </fileset> 
    </apply> 
</target> 

这将递归运行的每个目录下模块文件。

回答

5

你只想在第一级目录中做到这一点?

<target name="foo"> 
    <apply executable="ls"> 
     <arg value="-l" /> 
     <dirset dir="${basedir}/module/"> 
      <include name="*"/> 
     </dirset> 
    </apply> 
</target> 

请注意<include>。我仅指定在我的<dirset/>中指定的目录下的目录。如果我说,<include names="**/*"/>,它会指定所有目录。

当您处理目录而不是文件时,请使用<dirset/>而不是<fileset/><fileset/>用于指定文件。 <dirset/>用于指定目录。