3

我正在尝试在 Phing 中设置一个 mysql 导入脚本,但“<”会导致 XML 错误。有任何想法吗?

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

我正在考虑让 dbDeploy 这样做,但如果有一种简单的方法可以做到这一点,那就太好了(单行命令与 dbDeploy 的多行设置)

4

2 回答 2

8

通过替换它来逃避角色&lt;

于 2009-09-24T23:41:39.813 回答
3

我不熟悉 Phing,但它可能不会在 shell 中执行命令,因此重定向运算符将不起作用(它可能将运算符视为mysql自身的参数)。

而不是< ${sql.file}, try -e 'source ${sql.file}',所以你的整行是:

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

请参阅MySQL 批处理模式文档

于 2009-09-24T23:44:18.380 回答