在irb中抑制Enumerable :: each的输出

时间:2013-10-21 13:35:43

标签: ruby irb

Enumerable :: each的返回值是调用每个的对象。

当我在irb里面时,这真的很烦人,因为我得到了巨大的输出 是否可以在irb中抑制Enumerable :: each的返回值?

例如这个

[1,2].each {|u| puts "hey"}

输出此

>> [1,2].each {|u| puts "hey"}
hey
hey
=> [1, 2]

我想摆脱最后一行

2 个答案:

答案 0 :(得分:5)

这很简单。

只需在Ruby中的语句/表达式末尾添加一个分号(;),其中您不想看到它的返回值,并添加nil

成功:

[1,2].each {|u| puts "hey"}; nil

但请注意,没有理由压制irb输出(除非返回值太大/文本数量);它有助于调试并知道函数究竟发生了什么。

答案 1 :(得分:1)

添加--noecho标记。

工作原理:

$ irb --noecho