Ruby 控制台多行输入

4
这基本上是一个关于Ruby控制台(IRB)的初学者问题,但我在任何地方都找不到答案。当在Ruby控制台中编写语句,并在其中按Enter时,有时控制台会期望我继续编写语句并开始显示如下内容:
ruby-1.9.2-p180 :093">
那个"基本上告诉(我认为)Ruby希望我完成前一行的语句。然而,我无法完成它或取消语句。再次按Enter并没有真正帮助,如果此时输入其他语句,Ruby也会停止计算其他语句。
所以,这是什么模式,如何处理它?
3个回答

4
这意味着您的引号不平衡;请输入一个引号。
irb(main):004:0> s="this is
irb(main):005:0" a test"
=> "this is\na test"

你也可以按下Ctrl-C<Return>,这会让你进入根提示符。 Ctrl-D会将你带回提示符,但下一个<Return>会因未终止的引号而产生错误。 另外,你也可以使用pry,它可以让你使用!来返回顶层提示符。

0

你仍然可以完成之前的语句。Ruby 告诉你在上一行打开了一个双引号字符串,但没有关闭它。只需输入 ";结果可能是语法错误,但至少你的控制台将再次可用。


0
引号"表示您正在字符串中间。您可以关闭字符串,或者如果按下Ctrl-C,它应该终止当前语句。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接