4 votes

crée un jeu de fichiers de tous les fichiers correspondant à un modèle, en excluant les fichiers ayant un frère spécifique.

Je voudrais créer un ensemble de fichiers correspondant à un modèle spécifique, mais exclure de cet ensemble tous les fichiers qui ont un autre fichier spécifique dans le même répertoire.

Par exemple, je voudrais un jeu de fichiers qui correspond à tous les fichiers ./*/file.xml, comme :

<fileset dir="${some.dir}" includes="*/file.xml" />

... mais je veux exclure tous les fichiers file.xml qui se trouvent dans le même répertoire qu'un fichier ignore.this.

Donc, si la structure du dossier est :

foo/file.xml
bar/file.xml
bar/ignore.this

... le fichier .xml de foo sera sélectionné, mais pas celui de bar.

3voto

martin clayton Points 41306

Vous pouvez utiliser un jeu de fichiers avec un present sélecteur avec un mappeur :

<fileset dir="${some.dir}" includes="*/file.xml">
    <present targetdir="${some.dir}" present="srconly">
        <mapper type="regexp" from="^(.*)/.*" to="\1/ignore.this" />
    </present>
</fileset>

C'est-à-dire, inclure uniquement les fichiers appelés file.xml où il n'y a pas de fichier correspondant dans le même répertoire appelé ignore.this .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X