如何将shell脚本的值返回给rails?

时间:2011-03-22 06:33:26

标签: ruby-on-rails shell

我编写了一个执行一些mysql命令的shell脚本。

我想从rails端运行该shell脚本。并希望从shell脚本中获取命令的结果。

我怎么处理它?<​​/ p>

修改

script.sh

mysql -u root -pmysql << eof
SELECT TABLE_NAME AS "Table Name", table_rows AS "Quant of Rows", ROUND((data_length + index_length)/1024/1024,2) AS "Total Size Mb"  FROM information_schema.TABLES WHERE information_schema.TABLES.table_schema='database_name';
eof

这是我的剧本。我如何将SELECT查询结果返回给rails?

2 个答案:

答案 0 :(得分:2)

使用反引号``

`/path/to/script` #backticks

修改

要获取mysql语句的输出,请使用-e标志

EG。 mysql -e "SELECT * from information_schema"

答案 1 :(得分:2)

您可以执行此类操作,它将一直阻止,直到脚本完成,并且它发送到标准输出的任何输出都将包含在output变量中。

output = `/my/script.sh`
puts output