2010-05-27 18 views
2

我需要知道在我的Ruby加載路徑,所以我這樣做:

$ ruby -e "puts $LOAD_PATH" 

它沒有打印出任何東西了,這是我沒想到。所以我試過這個:

$ ruby -e "puts $:" 
/usr/local/lib/site_ruby/1.8 
/usr/local/lib/site_ruby/1.8/i486-linux 
/usr/local/lib/site_ruby/1.8/i386-linux 
/usr/local/lib/site_ruby 
/usr/lib/ruby/vendor_ruby/1.8 
/usr/lib/ruby/vendor_ruby/1.8/i486-linux 
/usr/lib/ruby/vendor_ruby 
/usr/lib/ruby/1.8 
/usr/lib/ruby/1.8/i486-linux 
/usr/lib/ruby/1.8/i386-linux 
. 

爲什麼第二個給我預期的輸出,第一個沒有?他們不應該一樣嗎?我只是在irb試過,我得到了我期望的結果。

這是我的Ruby版本,如果它的確與衆不同:

$ ruby --version 
ruby 1.8.7 (2008-08-11 patchlevel 72) [i486-linux] 

回答

5

他們不是。嘗試運行此命令:

$ ruby -e 'puts $LOAD_PATH' 

不使外殼擴展$LOAD_PATH由於使用的'代替"

+0

嘎!這很有道理。我想這是我第一次使用'ruby -e'時使用全局。 :) – 2010-05-27 15:40:25