如何从Ruby脚本中执行Ruby代码?

时间:2018-04-01 16:54:39

标签: ruby operating-system cloud sandbox

我试图执行Ruby脚本文件。 假设输入是包含文件内容的字符串。 有什么可能的方法?考虑到我需要保持执行文件的输出,无论stdout是否与主脚本分开。

作为我尝试做的事情的一个例子,有一个名为false的函数

然后调用execute(code)将返回execute('4 + 5'),尽管我可以在9的位置编写完整的Ruby脚本。

如果有人可以转发我任何相关的教程或书籍,我会感激不尽:)

1 个答案:

答案 0 :(得分:0)

你可以在Ruby中调用shell命令,它就像在反引号中围绕你想要的命令一样简单直观。

返回输出,因此只需将其保存到变量:

script1.rb:

puts "asdf"

script2.rb:

output = `ruby script1.rb`    
puts output
"asdf"

我怀疑你究竟是在尝试做什么。因为这完全不直观和迂回。你确定你不只是在寻找一个模块或什么吗?