sau*_*urb 3 ruby ruby-on-rails
我正在使用 system() 调用在 Rails(-v 2.3.5) 应用程序中调用 C 可执行文件。
makefile_path = File.expand_path('./c_executalbe', Rails.root)
system(makefile_path)
Run Code Online (Sandbox Code Playgroud)
在我的本地机器上一切正常,但由于某种原因系统()调用不会在服务器(dreamhost)上运行。并且 log/production.log 中没有错误信息。我想在日志中看到该系统调用的返回输出。我怎样才能做到这一点?
提前致谢!
请参阅:http : //ruby-doc.org/core/classes/Kernel.html#M005960
用法:
output = %x(command)
output = `command`
output = Kernel.send(:`, "command")
Run Code Online (Sandbox Code Playgroud)
您将获得命令输出。
如果command来自一个变量,就像你的情况一样,你可以插入:
output = %x(#{makefile_path})
output = `#{makefile_path}`
output = Kernel.send(:`, makefile_path)
Run Code Online (Sandbox Code Playgroud)
登录log/production.log:
logger.info output
# or
puts output
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2995 次 |
| 最近记录: |