2010-12-15 42 views
27

如何讓我的紅寶石腳本輸出紅寶石版本運行它?有一個紅寶石腳本輸出什麼版本的紅寶石正在運行它

+0

我假設你不感興趣,無論是MRI/YARV對JRuby中,IronRuby的,Rubinius的,等等。? – 2010-12-15 22:33:50

+0

@Andrew我很早就學習了紅寶石,我不知道這些是什麼。目前,我正在使用ruby 1.9.2和ruby 1.8.7。我認爲這些是你提到的那些'正常'...有沒有辦法找到這個問題呢? – 2010-12-16 04:34:58

回答

50

RUBY_VERSION常量包含Ruby解釋的版本號和RUBY_PATCHLEVEL包含PATCHLEVEL,所以這樣的:

puts RUBY_VERSION 

輸出例如2.2.3,而這個:

puts RUBY_PATCHLEVEL 

輸出例如173。一起它可以像這樣使用:

ruby -e 'print "ruby #{ RUBY_VERSION }p#{ RUBY_PATCHLEVEL }"' 

輸出例如ruby 2.2.3p173

+0

+1非常好。這就是我需要的。 (倒計時的分鐘,直到它讓我接受答案) – 2010-12-15 20:12:12

4

作爲參考,下面是變量和常量的工作方式,以及Ruby內置變量和常量列表:Ruby Programming/Syntax/Variables and ConstantsPre-defined Variables。當然它缺少RUBY_VERSION

對於獎金圓,這會告訴你使用RbConfig關於你的Ruby環境的一些有用的信息:

require 'rbconfig' 
puts Config::CONFIG.sort_by{ |n,v| n.downcase }.map{ |n,v| "#{n} => '#{v}'" } 
+0

有趣的鏈接,雖然你提到,他們沒有RUBY_VERSION – 2010-12-16 04:37:52

+0

是的,我認爲他們需要做一個手掌對額頭巴掌。 – 2010-12-16 04:45:20

+0

記錄此類全局變量的另一個地方:https://ruby-doc.org/core-2.4.2/doc/globals_rdoc.html – Florin 2017-10-09 15:25:49