ruby - 为什么在我粘贴脚本时 irb 有时会崩溃?

标签 ruby irb

def load_lib
    path = File.join(File.dirname(__FILE__), 'lib')
    failures = []
    Dir.glob("#{path}/**/*.rb").each {  |file|
        puts "loading: #{file} ... "
    }
end 

有脚本。当我单独放入每一行时,load_lib 函数可用并且工作正常。但是,当我将它以一大块(Ubuntu 终端,Sh Ctrl C)粘贴到 irb 中时,它在 Dir.glob(... 行吓坏了并显示:

Display all 931 possibilities? (y or n)
!
!=
!~
<=>
.... [dozens of lines in this vein]

然后根本没有创建该方法。

这是我一次将它粘贴到一行时发生的(成功):

>>  def load_lib
>>     path = File.join(File.dirname(__FILE__), 'lib')
>>     failures = []
>> Dir.glob("#{path}/**/*.rb").each {  |file|
?> puts file
>> }
>> end
=> nil
>> load_lib
./lib/alpha_processor.rb
./lib/development_mail_interceptor.rb
./lib/service_processors/beta_processor.rb

在粘贴 []{} 时,是否有 irb 不喜欢的内容?

最佳答案

那是因为你的源文件中有 TAB 字符。缩进空格。 :-)

关于ruby - 为什么在我粘贴脚本时 irb 有时会崩溃?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8916588/

相关文章:

ruby-on-rails - Geocoder rails,检查是否有效

ruby - python -i 的 IRB 模拟

ruby-on-rails - 探索从控制台运行 Rails 服务器环境

java - 要求 'java' 在 irb 中失败

ruby - 在 Ruby 中安全地从内存中删除密码

ruby - 如何在 Curb gem 中设置 --data-binary 和 --compressed

ruby - 为什么 irb -r 使 __FILE__ 成为绝对路径?

ruby - 如何将 Rubymine IDE 调试器附加到 shell 进程?

ruby - RVM Ruby 默认不工作

ruby - facter 的 puppet 自定义事实