gpt4 book ai didi

Ant 在重命名原始文件时将文件复制到目录

转载 作者:行者123 更新时间:2023-12-04 20:07:51 25 4
gpt4 key购买 nike

我有一个任务需要将文件复制到某个位置。如果文件已存在于目标中,则需要重命名这些目标文件(附加 .bak)。如果目标文件不存在,则该文件应该就位。

目前我有这个:

<target name="install-jsps">
<copy todir="target">
<fileset dir="source"/>
<globmapper from="*.jsp" to="*.jsp.bak"/>
</copy>
</target>

然而,这会重命名 文件,而我想在复制源文件之前重命名目标 文件。我无法重命名整个目标文件夹,因为某些目标文件不在源文件集中。

最好我不想使用像 ant-contrib 这样的外部库。

最佳答案

您可以通过两项复制任务来完成:一项是进行备份,一项是从源复制新文件。您需要的额外位是 present selector在用于制作备份的文件集中。选择器允许您仅备份将要被取代的文件,即存在于源目录中的文件。

<copy todir="dest">
<fileset dir="dest" includes="*.jsp">
<present targetdir="source" />
</fileset>
<globmapper from="*" to="*.bak" />
</copy>

<copy todir="dest">
<fileset dir="source" includes="*.jsp" />
</copy>

关于Ant 在重命名原始文件时将文件复制到目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13858028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com