2009-09-24 1 views
3

Я пытаюсь настроить сценарий импорта mysql в Phing, но« < »вызывает ошибки XML. Есть идеи?`` `символ в задаче exec ломает мой скрипт построения phing

<exec command="mysql -u${mysql.username} -p${mysql.password} -h ${mysql.server} ${mysql.database} < ${sql.file}" /> 

Я смотрю на то, чтобы dbDeploy делать это, но было бы здорово, если бы там был простой способ для этой работы (команда однолинейной против установки мульти-линии dbDeploy)

ответ

8

Выбери символ, заменив его на &lt;

+2

такой простой. Дух. Благодарю. – jmccartie

3

Я не знаком с Phing, но он может не выполнять команду в оболочке, поэтому оператор перенаправления не будет работать (это может быть обработка оператора в качестве аргумента до mysql).

Вместо < ${sql.file}, попробуйте -e 'source ${sql.file}', поэтому вся ваша линия:

<exec command="mysql -u${mysql.username} -p${mysql.password} -h ${mysql.server} ${mysql.database} -e 'source ${sql.file}'" /> 

См MySQL batch mode documentation.

+0

Это замечательно. Я искал этот синтаксис и не мог его найти! Большое спасибо! – RandomWhiteTrash

Смежные вопросы