$ARG
$_ - The default input and pattern-searching space.
$<digit> - Contains the subpattern from the corresponding set of parentheses in the last pattern matched.
$MATCH
$& - The string matched by the last suclearcase/" target="_blank" >ccessful pattern match.
$PREMATCH
$` - The string preceding whatever was matched by the last successful pattern match.
$POSTMATCH
$' - The string following whatever was matched by the last successful pattern match.
$LAST_PAREN_MATCH
$+ - The last bracket matched by the last search pattern.
$MULTILINE_MATCHING
$* - Set to 1 to do multi-line matching within a string, 0 to tell Perlthat it can assume that strings contain a single line, for the purposeof optimizing pattern matches. Default is 0. Use of ``$*'' isdeprecated in modern perls.
input_line_number HANDLE EXPR
$INPUT_LINE_NUMBER
$NR
$. - The current input line number for the last file handle from which you read (or performed a seek or tell on).
input_record_separator HANDLE EXPR
$INPUT_RECORD_SEPARATOR
$RS
$/ - The input record separator, newline by default.
autoflush HANDLE EXPR
$OUTPUT_AUTOFLUSH
$| - If set to nonzero, forces a flush right away and after every write orprint on the currently selected output channel. Default is 0.
output_field_separator HANDLE EXPR
$OUTPUT_FIELD_SEPARATOR
$OFS
$, - The output field separator for the print operator.
output_record_separator HANDLE EXPR
$OUTPUT_RECORD_SEPARATOR
$ORS
$\ - The output record separator for the print operator. Ordinarily theprint operator simply prints out the comma-separated fields youspecify, with no trailing newline or record separator assumed.
$LIST_SEPARATOR
$" - This is like ``$,'' except that it applies to array valuesinterpolated into a double-quoted string (or similar interpretedstring). Default is a space.
$SUBSCRIPT_SEPARATOR
$SUBSEP
$; - The subscript separator for multidimensional array emulation.
$OFMT
$# - The output format for printed numbers. Use of ``$#'' is deprecated.
format_page_number HANDLE EXPR
$FORMAT_PAGE_NUMBER
$% - The current page number of the currently selected output channel.
format_lines_per_page HANDLE EXPR
$FORMAT_LINES_PER_PAGE
$= - The current page length (printable lines) of the currently selected output channel. Default is 60.
format_lines_left HANDLE EXPR
$FORMAT_LINES_LEFT
$- - The number of lines left on the page of the currently selected output channel.
format_name HANDLE EXPR
$FORMAT_NAME
$~ - The name of the current report format for the currently selected output channel. Default is name of the filehandle.
format_top_name HANDLE EXPR
$FORMAT_TOP_NAME
$^ - The name of the current top-of-page format for the currently selectedoutput channel. Default is name of the filehandle with _TOP appended.
format_line_break_characters HANDLE EXPR
$FORMAT_LINE_BREAK_CHARACTERS
$: - The current set of characters after which a string may be broken tofill continuation fields (starting with ^) in a format. Default is "\n-", to break on whitespace or hyphens.
format_formfeed HANDLE EXPR
$FORMAT_FORMFEED
$^L - What formats output to perform a form feed. Default is \f.
$ACCUMULATOR
$^A - The current value of the write() accumulator for format() lines.
$CHILD_ERROR
$? - The status returned by the last pipe close, backtick (``) command, or system() operator.
$OS_ERROR
$ERRNO
$! - If used in a numeric context, yields the current value of errno, withall the usual caveats. If used in a string context, yields thecorresponding system error string.
$EXTENDED_OS_ERROR
$^E - More specific information about the last system error than thatprovided by $!, if available. (If not, it's just $! again, except underOS/2.)
$EVAL_ERROR
$@ - The Perl syntax error message from the last eval() command.
$PROCESS_ID
$PID
$$ - The process number of the Perl running this script.
$REAL_USER_ID
$UID
$< - The real uid of this process.
$EFFECTIVE_USER_ID
$EUID
$> - The effective uid of this process.
$REAL_GROUP_ID
$GID
$( - The real gid of this process.
$EFFECTIVE_GROUP_ID
$EGID
$) - The effective gid of this process. If you are on a machine thatsupports membership in multiple groups simultaneously, gives a spaceseparated list of groups you are in.
$PROGRAM_NAME
- Contains the name of the file containing the Perl script being executed.
$[ - The index of the first element in an array, and of the firstcharacter in a substring. As of Perl 5, assignment to ``$['' is treatedas a compiler directive, and cannot influence the behavior of any otherfile. Its use is discouraged.
$PERL_VERSION
$] - The version + patchlevel / 1000 of the Perl interpreter.
$DEBUGGING
$^D - The current value of the debugging flags.
$SYSTEM_FD_MAX
$^F - The maximum system file descriptor, ordinarily 2. System filedescriptors are passed to exec()ed processes, while higher filedescriptors are not.
$^H - The current set of syntax checks enabled by use strict.
$INPLACE_EDIT
$^I - The current value of the inplace-edit extension.
$OSNAME
$^O - The name of the operating system under which this copy of Perl wasbuilt, as determined during the configuration process.
$PERLDB
$^P - The internal variable for debugging support.
$BASETIME
$^T - The time at which the script began running.
$WARNING
$^W - The current value of the warning switch.
$EXECUTABLE_NAME
$^X - The name that the Perl binary itself was executed as, from C's argv[0].
$ARGV - contains the name of the current file when reading from <>.
@ARGV - The array @ARGV contains the command line arguments intended for the script.
@INC - The array @INC contains the list of places to look for Perl scriptsto be evaluated by the do EXPR, require, or use constructs.
%INC - The hash %INC contains entries for each filename that has been included via do or require.
$ENV - The hash %ENV contains your current environment. Setting a value in ENV changes the environment for child processes.
$SIG - The hash %SIG is used to set signal handlers for various signals. Example:
$^M -emergency memory pool