2011-03-09 43 views
1

for和for之间的主要区别是什么? 我正在使用websphere mqfte使用ant脚本来传输文件。ant-contrib的和foreach的核心区别是什么?

我需要我的文件重新命名,并发送到如下另一个文件夹:

如:源:\src\*.txt在目的地的文件应该\dest\kk_*.cpp(*表示文件名中的所有文件需以更名为如下。 )。

任何人都可以帮助我吗?

回答

1

并从antcontrib的foreach任务之间的主要区别=

为使用连续状macrodef而 的foreach打开每个迭代一个新的项目范围 - 像其他任务 蚂蚁,antcall,和subant。

这意味着由于性能问题,应优先使用任务。

对于您的重命名问题=>您应该使用复制或移动任务 一个嵌套的映射器已被其他研究人员说过。 针对标准蚂蚁使用行为的原因是什么!?

btw。因为antcontrib开发似乎已经死了 - 最后一次在2006年发布: 还有一个具有类似功能的新的ant插件=>ant flaka

1

copy任务与glob或正则表达式mapper一起使用。不过,不知道这个问题和每个人都有什么关系。

+0

事情是我需要执行此重命名而不使用复制和映射程序任务。 – trilawney 2011-03-09 11:25:56

+0

后人 - 使用ant-contrib但不使用复制和映射器任务是愚蠢的。这个答案是处理这个例子的最好方法(尽管这个问题似乎与这个例子完全无关)。 – thekbb 2013-11-25 14:11:41

0

for和foreach任务不是核心Ant的一部分,很可能他们是ant-contrib集合中的任务。

根据蚂蚁的contrib for task docs

这个任务是一样的<foreach> 任务,除了

* it uses a nested sequential for each iteration; and 
* it implements an additional "keepgoing" attribute. 

<for>利用蚂蚁的macrodef 任务,所以@ {}表示法用于 参数替换。

+0

克莱顿。你能否建议我一种方法来执行这个重命名而不使用mapper任务。 – trilawney 2011-03-09 11:27:24

+2

也许,但为什么你不能使用映射器的副本,然后调用fte:复制重命名的文件 - 你试过并且遇到了问题吗? – 2011-03-09 11:47:52

+0

它工作很好的clayton。但根据我的要求,我无法在源端或目标端创建任何分段。 – trilawney 2011-03-10 05:27:38

相关问题