irb(1) Interactive Ruby Shell


[--version ] [-dfm ] [-I directory ] [-r library ] [-- [no inspect ] ] [-- [no readline ] ] [--prompt mode ] [--prompt-mode mode ] [--inf-ruby-mode ] [--simple-prompt ] [--noprompt ] [--tracer ] [--back-trace-limit n ] [--irb_debug n ] [- ] [program_file] [argument ...]


is the REPL(read-eval-print loop) environment for Ruby programs.


Prints the version of .

-E external [: internal ]
--encoding external [: internal ]
Same as `ruby -E' . Specifies the default value(s) for external encodings and internal encoding. Values should be separated with colon (:).

You can omit the one for internal encodings, then the value ( Encoding.default_internal ) will be nil.

-I path
Same as `ruby -I' . Specifies $LOAD_PATH directory

Same as `ruby -U' . Sets the default value for internal encodings ( Encoding.default_internal ) to UTF-8.

Same as `ruby -d' . Sets $DEBUG to true.

Suppresses read of ~/.irbrc

Prints a summary of the options.

Bc mode (load mathn, fraction or matrix are available)

-r library
Same as `ruby -r'. Causes irb to load the library using require.

Uses `inspect' for output (default except for bc mode)

Doesn't use inspect for output

Uses Readline extension module.

Doesn't use Readline extension module.

--prompt mode
--prompt-mode mode
Switch prompt mode. Pre-defined prompt modes are `default', `simple', `xmp' and `inf-ruby'.

Uses prompt appropriate for inf-ruby-mode on emacs. Suppresses --readline.

Makes prompts simple.

No prompt mode.

Displays trace for each execution of commands.

--back-trace-limit n
Displays backtrace top n and tail n The default value is 16.

--irb_debug n
Sets internal debug level to n (not for popular use)



Also depends on same variables as ruby(1).


Personal irb initialization.


% irb
irb(main):001:0> 1 + 1
irb(main):002:0> def t(x)
irb(main):003:1> x+1
irb(main):004:1> end
=> nil
irb(main):005:0> t(3)
=> 4
irb(main):006:0> if t(3) == 4
irb(main):007:1> p :ok
irb(main):008:1> end
=> :ok
irb(main):009:0> quit


    Security vulnerabilities should be reported via an email to Aq [email protected] Ns . Reported problems will be published after being fixed.

    And you can report other bugs and feature requests via the Ruby Issue Tracking System ( Do not report security vulnerabilities via the system because it publishes the vulnerabilities immediately.


Written by Keiju ISHITSUKA.