OptionsOn ruby itself
--copyright
Prints the copyright notice
--version
Prints the version of Ruby interpreter
-0
Specifies the input record separator ($/) as an octal number <octal>
-C
Causes Ruby to switch to the directory <directory>
-F
Specifies input field separator ($;) <pattern>
-I
Used to tell Ruby where to load the library scripts. Directory path will be added to the load-path variable ($:) <directory>
-K
Specifies KANJI (Japanese) encoding <kcode>
-S
Makes Ruby use the PATH environment variable to search for script, unless its name begins with a slash. This is used to emulate #! on machines that don't support it, in the following manner: #! /usr/local/bin/ruby # This line makes the next one a comment in Ruby \ exec /usr/local/bin/ruby -S $0 $*
-T
Turns on taint checks at the specified level (default 1) <level>
-a
Turns on auto-split mode when used with -n or -p
-c
Causes Ruby to check the syntax of the script and exit without executing. If there are no syntax errors, Ruby will print “Syntax OK” to the standard output
-d--debug
Turns on debug mode. $DEBUG will be set to true
-e
Specifies script from command-line while telling Ruby not to search the rest of arguments for a script file name <command>
-h--help
Prints a summary of the options
-i
Specifies in-place-edit mode. The extension, if specified, is added to old file name to make a backup copy <extension>
-l
Enables automatic line-ending processing, which means to firstly set $\ to the value of $/, and secondly chops every line read using chop!
-n
Causes Ruby to assume the following loop around your script
-p
Acts mostly same as -n switch, but print the value of variable $_ at the each end of the loop
-r
Causes Ruby to load the library using require <library>
-s
Enables some switch parsing for switches after script name but before any file name arguments (or before a --)
-v--verbose
Enables verbose mode
-w
Enables verbose mode without printing version message at the beginning. It sets the $VERBOSE variable to true
-x
Tells Ruby that the script is embedded in a message. Leading garbage will be discarded until the first that starts with “#!” and contains the string, “ruby”. Any meaningful switches on that line will applied. The end of script must be specified with either EOF, ^D (control-D), ^Z (control-Z), or reserved word __END__. If the directory name is specified, Ruby will switch to that directory before executing script <directory>
-y--yydebug
Turns on compiler debug mode. Ruby will print a bunch of internal state messages during compiling scripts. You don't have to specify this switch, unless you are going to debug the Ruby interpreter