Ant 为什么可以';t我使用<;日期>;蚂蚁上的选择器<;dirset>;?
我在一个目录中有三个文件和三个目录,日期各不相同Ant 为什么可以';t我使用<;日期>;蚂蚁上的选择器<;dirset>;?,ant,Ant,我在一个目录中有三个文件和三个目录,日期各不相同 $ cd mydir $ ls -ltr -rw-rw-r-- 1 skiphoppy users 0 Nov 14 00:00 file.old.20121114 drwxrwxrwx 2 skiphoppy users 4096 Nov 14 00:00 dir.old.20121114 drwxrwxrwx 2 skiphoppy users 4096 Dec 5 12:05 dir.old.20121205 drwxrwxrwx
$ cd mydir
$ ls -ltr
-rw-rw-r-- 1 skiphoppy users 0 Nov 14 00:00 file.old.20121114
drwxrwxrwx 2 skiphoppy users 4096 Nov 14 00:00 dir.old.20121114
drwxrwxrwx 2 skiphoppy users 4096 Dec 5 12:05 dir.old.20121205
drwxrwxrwx 2 skiphoppy users 4096 Dec 5 12:05 dir
-rw-rw-r-- 1 skiphoppy users 0 Dec 5 12:16 file.old.20121205
-rw-rw-r-- 1 skiphoppy users 0 Dec 5 12:16 file
我想构建一个目录集,其中包含2012-12-01之前的所有目录。如果我的阅读正确,那么可以使用选择器限制返回的文件。但这似乎不适用于目录集,即使目录集文档说可以使用嵌套模式集和选择器
如果我在文件集上使用日期选择器,我只会得到我期望的一个旧文件;但在目录集上使用相同的语法,我得到所有目录:
<fileset id="old.files" dir="mydir">
<date datetime="12/01/2012 12:00 AM" when="before"/>
</fileset>
<echo message="Files: ${toString:old.files}"/>
<dirset id="old.dirs" dir="mydir">
<date datetime="12/01/2012 12:00 AM" when="before"/>
</dirset>
<echo message="Dirs: ${toString:old.dirs}"/>
这里发生了什么导致日期选择器不工作?您可能需要为日期设置
checkdirs
属性。默认值为“false”,即选择所有内容
<date datetime="12/01/2012 12:00 AM" when="before" checkdirs="true" />
<date datetime="12/01/2012 12:00 AM" when="before" checkdirs="true" />