irb - Man Page

Interactive Ruby Shell


irb[--version] [-dfUw] [-I directory] [-r library] [-E external[:internal]] [-W[level]] [--[no]inspect] [--[no]multiline] [--[no]singleline] [--[no]echo] [--[no]colorize] [--[no]verbose] [--prompt mode] [--prompt-mode mode] [--inf-ruby-mode] [--simple-prompt] [--noprompt] [--tracer] [--back-trace-limit n] [--] [program_file] [argument ...]


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



Prints the version of irb.

-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.


Same as `ruby -w' .


Same as `ruby -W' .


Prints a summary of the options.

-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 multiline editor module.


Doesn't use multiline editor module.


Uses singleline editor module.


Doesn't use singleline editor module.


Show result(default).


Don't show result.


Use colorization.


Don't use colorization.


Show details.


Don't show details.

--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 --multiline and --singleline.


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.


Also irb 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

=> :t

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


See Also


Reporting Bugs


Written by Keiju ISHITSUKA.


August 11, 2019