Как разбить строку и использовать ее внутри цикла for в скрипте ant? - PullRequest
4 голосов
/ 02 июня 2011

У меня есть список ips машин в свойстве ant.

<property name="machines" ip="10.10.10.1;10.10.10.2;10.10.10.3"/>

Мне нужно скопировать один файл на все машины (все машины - машины Windows).Поэтому я хочу разделить эту строку и использовать ее внутри цикла for.Внутри этого цикла я выполню команду копирования.

<code><exec executable="cmd.exe">
<pre>
   

Теперь, как разделить и использовать его внутри для цикла?

Ответы [ 2 ]

9 голосов
/ 03 июня 2011

Самый простой способ - использовать функции ant-contrib

<for list="10.10.10.1;10.10.10.2" delimiter=";" param = "val">
<sequential>
<echo message = "val = @{val}"/>
</sequential>
</for>
2 голосов
/ 02 июня 2011

Если вы не можете использовать ant-contrib, альтернативой может быть написание собственной пользовательской задачи Ant для разделения строки и выполнения вашей команды для каждого токена.

В качестве альтернативы, поскольку вы выполняете Windows-специфическая команда в любом случае, вы можете сделать логику split / loop в пакетном скрипте и выполнить ее, передав всю строку свойств.

...