method

global_variables

ruby latest stable - Class: Kernel
global_variables()
public

Returns an array of the names of global variables.

global_variables.grep /std/   #=> [:$stdin, :$stdout, :$stderr]

1Note

list of predefined variables

ronald ยท Jun 10, 2009
$!         The exception information message set by 'raise'.
$@         Array of backtrace of the last exception thrown.

$&         The string matched by the last successful pattern match in this scope.
$`         The string to the left  of the last successful match.
$'         The string to the right of the last successful match.
$+         The last bracket matched by the last successful match.
$1 to $9   The Nth group of the last successful regexp match.
$~         The information about the last match in the current scope.

$=         The flag for case insensitive, nil by default.
$/         The input record separator, newline by default.
$\\         The output record separator for the print and IO#write. Default is nil.
$,         The output field separator for the print and Array#join.
$;         The default separator for String#split.

$.         The current input line number of the last file that was read.
$<         The virtual concatenation file of the files given on command line.
$>         The default output for print, printf. $stdout by default.
$_         The last input line of string by gets or readline.

$0         Contains the name of the script being executed. May be assignable.
$*         Command line arguments given for the script sans args.
$$         The process number of the Ruby running this script.
$?         The status of the last executed child process.
$:         Load path for scripts and binary modules by load or require.

$"         The array contains the module names loaded by require.
$DEBUG     The status of the -d switch.
$FILENAME  Current input file from $<. Same as $<.filename.
$LOAD_PATH The alias to the $:.
$stderr    The current standard error output.
$stdin     The current standard input.
$stdout    The current standard output.
$VERBOSE   The verbose flag, which is set by the -v switch.
$-0        The alias to $/.
$-a        True if option -a ("autosplit" mode) is set. Read-only variable.
$-d        The alias to $DEBUG.
$-F        The alias to $;.
$-i        If in-place-edit mode is set, this variable holds the extension, otherwise nil.
$-I        The alias to $:.
$-l        True if option -l is set ("line-ending processing" is on). Read-only variable.
$-p        True if option -p is set ("loop" mode is on). Read-only variable.
$-v        The alias to $VERBOSE.
$-w        True if option -w is set.

Source: http://en.wikibooks.org/wiki/Ruby_Programming/Syntax/Variables_and_Constants#Pre-defined_Variables