我有两个剧本:
测试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/