我有两个剧本:
测试1.rb

require 'test2.rb'
puts "hello"

测试2.rb
puts "test"

我通过执行ruby test2.rb test1.rb来运行这个。
但只有test被打印出来,而不是hello

最佳答案

您只需要运行ruby test1.rb并且require语句应该为您拉入test2.rb—您也不需要将它放在命令行中(这将尝试运行test2.rb,并将字符串“test1.rb”作为参数传递,这不是您想要的)
编辑:require语句在尝试查找“test2.rb”时默认不在当前目录中您可以通过将其更改为:
require File.dirname(__FILE__) + '/test2.rb'

关于ruby - 从命令行运行Ruby脚本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12039504/

10-14 06:33