вернуть значение из скрипта - PullRequest
1 голос
/ 25 октября 2009

Я вызываю командный файл внутри скрипта nant и хотел бы получить значение (строку из 5 символов), вернуться к скрипту nant и продолжить скрипт nant Пожалуйста, предложите, как это можно сделать. Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 26 октября 2009

Вы можете использовать атрибут resultproperty узла задачи exec

Ваш командный файл (foo.bat):

...
@exit 101

Ваш фрагмент кода NAnt:

<exec
  program="C:\foo.bat"
  resultproperty="bar"
  failonerror="false" />
<echo message="batch returned ${bar}"/>
1 голос
/ 25 октября 2009

Я вообще не знаю nant, но самый распространенный способ возврата данных - это ОШИБКА. Тем не менее, уровень ошибки является только числовым (1-255) AFAIK. Чтобы вернуть уровень ошибки, используйте EXIT в вашем пакетном файле:

ВЫХОД 1

Второй способ - заставить ваш пакетный файл вывести значение ... Хотя это очень рискованно, так как другие выходные данные могут помешать ему.

Третий способ - записать результат в файл (например, "call command> result.txt") и не проанализировать файл.

В каждом случае вам необходимо выполнить nant-анализ результата - какой из способов наиболее вероятен, зависит от того, с чем он может иметь дело.

...