如果数组定义不正确,似乎会使irb无法使用。或者是吗?
见下面的例子:
irb(main):003:0> set = ['a]
irb(main):004:1'
irb(main):005:1' g
irb(main):006:1' q
irb(main):007:1' '
irb(main):008:1> set
irb(main):009:1> puts 'hello'
irb(main):010:1>
irb(main):011:1*
irb(main):012:1* '
irb(main):013:1' '
irb(main):014:1> '
irb(main):015:1' '
irb(main):016:1> "
irb(main):017:1" "
irb(main):018:1> puts "hello"
irb(main):019:1> ^C
irb(main):019:0>
irb(main):020:0*
irb(main):021:0* ^C
irb(main):021:0> exit
答案 0 :(得分:1)
这是因为您忘记了开头的第一句话。它会将该引号添加到下一个输入。按ctrl-C
,然后重试。那应该解决它。
如果这没有帮助,请尝试ctrl-D
这将向EOB发送EOF。请参阅:http://en.wikipedia.org/wiki/End-of-file
答案 1 :(得分:1)
当您没有关闭单引号字符串时,irb
开始将以下所有内容(包括close-array ]
)视为该字符串的一部分。< / p>
要返回有效的提示,您需要
'
,然后匹配]
;或看到提示格式错误的字符串后,提示中的最后一位数字会更改为1
,并在Ctrl-C后返回0
?这就是嵌套深度。如果它为0,那么你将回到itb的主要环境中。