我在ruby-1.8.7-p302
时
exec "mysql -u root --password=****** onc_test < support/submission.sql"
我突然退出,无论是在Rails,Rails控制台还是IRB中。我正在运行mysql Ver 14.14 Distrib 5.1.53, for apple-darwin10.4.0 (i386) using readline 6.1
顺便提及,
exec "mysqldump -u root --password=****** onc_test > support/submission.sql"
工作正常。
答案 0 :(得分:2)
我将推测也许exec用一些破坏它的东西包裹它
你尝试过使用反引号吗?
`mysql -u root --password=****** onc_test < support/submission.sql`
检查输出
答案 1 :(得分:1)
exec
导致立即退出,因为它就是这样做的。它立即退出你的ruby过程。来自rubydoc上的内核文档:
通过运行给定的外部命令替换当前进程。
如果您想让ruby进程保持活动状态,请使用反引号或system
。至于你的mysql导入无法正常工作,请尝试为它提供sql转储的绝对路径。