0

我有三个 ruby​​ 文件,a.rbb.rb如下c.rb

要执行c.rbI could eitherruby a.rbruby lib/lib/c.rb. 但我想区分这两种方法。所以在c.rb我想知道程序的入口点。(如果您熟悉node,则与.)相同require.main。)

dir
 -- a.rb
 -- lib
    -- b.rb
    -- lib
       -- c.rb

# a.rb
require 'lib/b'

# b.rb
require 'lib/c'

# c.rb
puts 'I am here'
4

1 回答 1

4

经典的做法是使用__FILE__and $0

if $0 == __FILE__
  # code when this file is the entry point
end
于 2012-10-23T10:45:28.983 回答