我使用IRB(交互式ruby控制檯)來學習如何使用Ruby進行編程。如果我先在文本編輯器中編寫程序,如何將文件加載到控制檯?Ruby:如何將文件加載到交互式ruby控制檯(IRB)?
回答
這取決於你的紅寶石。 Ruby 1.8包含你當前的路徑,而Ruby 1.9不包含。評估$:
以確定您的路徑是否包含在內。所以在Ruby 1.9中,你必須使用整個路徑,這總是一個安全的選擇。
然後您可以使用require
或load
來包含該文件。
require
不需要您在嘗試查找文件時添加該文件的後綴,並且只會包含該文件一次。大部分時間應該使用require
而不是load
。
退房Adding a directory to $LOAD_PATH (Ruby)如果你將要使用Ruby 1.8
如果你只需要一個文件加載到IRB你可以用irb -r ./your_file.rb
調用它,如果它是在同一目錄下。
這會自動需要該文件,並允許您立即使用該文件。
在Ubuntu 14.04使用Ruby 1.9.3,我能夠從當前目錄加載文件到irb
使用以下命令行:
irb -I . -r foo.rb
其中foo.rb
是我想從我目前的加載文件目錄。按照ruby手冊頁中的說明,需要-I
選項來將當前目錄(.
)添加到ruby的加載路徑。這使得可以從當前目錄輸入require
文件,irb
可以完成-r
選項。
當我遇到這個問題時,我不明顯的關鍵部分是-I
選項。一旦你這樣做了,你可以在irb
之內調用require 'foo.rb'
來獲取當前目錄中的任何文件。當然,你可以指定你想要的任何目錄,而不僅僅是.
和-I
選項。包括負載路徑上的多個目錄,請用冒號分隔(:),例如:
irb -I foo/:bar/:baz/
該命令將目錄添加foo
,bar
和baz
Ruby的負載路徑。
的最後一種選擇是使用require
或-r
時加載一個文件中使用的相對或絕對文件路徑:
irb -r ./foo.rb
內
irb
或從:
> require './foo.rb'
兩種方法:
- 加載源機智豪特運行程序 - 這可訪問所有的變量和函數:
source("filename.rb")
- 運行程序,然後拖放到交互模式 - 此僅給出訪問功能,不變量:
require("filename.rb")
另一種方式來加載路徑進入IRB被直接輸入需要然後拖放在F回到終端。 - 使用Linux Mint進行測試。
這是否適用於哪些操作系統? – Adam
Linux Mint。對不起,我應該補充說。 –
- 1. 如何在Ruby交互式控制檯(irb)中加載自寫的ruby函數?
- 2. 交互式控制檯爲Ruby,PHP
- 3. 推薦的Ruby交互式控制檯
- 4. Ruby和Python如何實現其交互式控制檯?
- 5. 如何在ruby交互式控制檯中使用json?
- 6. IRb:如何通過預先加載的類啓動交互式ruby會話
- 7. IDLE喜歡用於Ruby的交互式控制檯
- 8. 創建交互式Ruby控制檯應用程序
- 9. 如何更改Ruby對象的pry/irb控制檯顯示值?
- 10. 交互式Flash控制檯
- 11. 如何與Ruby語言測驗計劃的IRB交互?
- 12. Erlang交互式控制檯事件
- 13. QML交互式控制檯小部件
- 14. Ruby - 如何將控制檯輸入寫入文件
- 15. 如何將實時(交互式)控制檯窗口添加到Atom?
- 16. 更改Rails控制檯(IRB)Ruby版本OSX
- 17. 交互式紅寶石控制檯(irb)是否有快捷方式?
- 18. 如何將文件加載到python控制檯?
- 19. 如何將Pydev項目導入交互式控制檯?
- 20. 將Ruby控制檯輸出寫入文本文件
- 21. Rails3 irb控制檯vs rails控制檯?
- 22. 將代碼發送到F#交互式控制檯
- 23. 有沒有交互式cakephp控制檯?
- 24. 是否有ABAP交互式控制檯?
- 25. Visual Studio交互式控制檯寬度
- 26. Eclipse中的交互式控制檯
- 27. Sublime Text 3 Python交互式控制檯?
- 28. 交互式pyDev控制檯在斷點
- 29. pydev交互式控制檯和raw_input
- 30. 如何在irb控制檯中使用open()打印出.txt文件中的基本文本? #Ruby
Is this [this] [1]你想達到什麼目的? [1]:http://stackoverflow.com/a/2652558/919641 – pjam
源如果你想添加除每個文件之間只是-r以上( 「filename.rb」) –