36

例として、IRBにアクセスして次のことを行った場合があります。

jruby-1.6.7 :026 > puts [1,2,3,4,5]
1
2
3
4
5
=> nil 

とにかく抑制する方法はありnilますか?問題は、私が大きなデータ構造を入れた場合、他の無関係なリターン応答をスパムすることです。ブロックを実行するデバッグステートメントからの出力を確認することに興味があり、継続的に上にスクロールして実際のデータを探す必要があります。

4

4 に答える 4

60

たまに長い出力を抑制したい場合は;0、次のように使用します。

a = [*1..10000];0
# => 0

一般的に抑制したい場合は、〜/.irbrcファイルを使用してください。IRB.conf [:INSPECT_MODE]およびIRB.conf [:PROMPT] [your_prompt] [:RETURN]は、返される内容を制御します。IRB.conf [:PROMPT_MODE]をチェックすることで、your_promptが何であるかを理解できます。

例:

IRB.conf[:PROMPT][:DEFAULT][:RETURN] = "" # suppress return value completely

値を変更した後、irbを再起動する必要があります。

お役に立てば幸いです。

于 2012-04-14T02:56:48.417 に答える
18

次のコマンドを使用して、出力を抑制することもできますirb --simple-prompt --noecho

以下を見つけてください:

@ubuntu:~$ irb --simple-prompt
>> puts "hi"
hi
=> nil
>> p "hi"
"hi"
=> "hi"
>> exit
@ubuntu:~$ irb --simple-prompt --noecho
>> puts "hi"
hi
>> p "hi"
"hi"
>> 

あなたがそれで大丈夫になることを願っています。

私は以下のようにルビーバージョンを使用しています:

@ubuntu:~$ ruby -v
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]
于 2013-02-15T22:04:56.080 に答える
7

@Tallboyデッドリンクから

Railsコンソールで戻り値を抑制するには、次のように入力します。
conf.return_format = ""

デフォルト(戻り値を出力)
conf.return_format = "=> %s\n"

于 2015-03-26T09:43:27.917 に答える
4

私はirbで以下を実行します:

irb_context.echo = false

例えば

$ irb
> "foo"
=> "foo"
> irb_context.echo = false
> "foo"
>
于 2018-10-17T21:54:57.270 に答える