Perl's special variables : Special Variables « Language Basics « Perl






Perl's special variables

   

VARIABLE    DEFAULT VALUE    DESCRIPTION

$_          N/A              The default input and pattern-searching space.

$digit      N/A              Contains the subpattern from a successful parentheses pattern match.

$&          N/A              The string from the last successful pattern match.

$          N/A              The preceding string to the last successful pattern match.

$'          N/A              The string following the last successful pattern match.

$+          N/A              The last bracket matched from the last search pattern.

$*          0                Controls internal string multiline pattern matching.

$.          N/A              The current input line number of last filehandle read.

$/          \n               The input record separator.

$|          0                If set to nonzero, forces a flush of the currently selected stream after every write.

$,          N/A              The output field separator for the print command.

$"          Space            The separator that joins elements of arrays interpolated in strings.

$\          N/A              The output record separator for the print command.

$;          \034             The subscript separator for multidimensional array emulation. 

$#          N/A              The output format for printed numbers.

$%          N/A              The page number of the currently selected output stream.

$=          60               The page length of the currently selected output stream.

$          N/A              The number of lines left on the current page.

$          filehandle       The name of the current top of page format for the currently selected output stream.

$:          \n-              The characters used to fill a continuation field.

$L         \f               The default form-feed character.

$?          N/A              The status value returned from the last system, pipe close, or back tick command.

$!          N/A              Contains the current value of errno.

$@          N/A              The Perl syntax error from the last eval statement.

$$          N/A              The process ID (PID) of the current running Perl script.

$<          N/A              The real user ID (UID) of the current running process.

$>          N/A              The effective UID of the current running process.

$(          N/A              The real group ID (GID) of the current running process.

$)          N/A              The effective GID of the current running process.

$0          N/A              The name of the file of the Perl script.

$[          0                The index of the first element of an array. 

$]          N/A              The string printed out when Perl is run with the -v command line option.

$A         N/A              The accumulator for form line and write operations.

$D         N/A              The current value of the debugging flags.

$F         2                The maximum number of system file descriptors.

$I         N/A              Contains the current value of the in-place editing flag (-i).

$P         N/A              Internal debugging flag.

$T         N/A              The time in which the script began running. 

$W         N/A              The current value of the warning switch.

$X         N/A              The name of the Perl binary that was executed.

$ARGV       N/A              The name of the current file when reading from <>.

   
    
    
  








Related examples in the same category

1.Special Literals
2.Splitting up $_
3.Splitting up $_ and creating an unnamed list
4.The list separator is a comma
5.The list separator is the empty string
6.Passing Arguments at the Command Line
7.Special Hashes: The %ENV Hash
8.The %SIG hash sets signal handlers for signals.
9.A program that changes the value of $/.
10.A program that uses the $" (dollar and quotation) variable.
11.A program that uses the $(dollar), variable.
12.A program that uses the $< variable.
13.A program that uses the $\(dollar and slash) variable.
14.A simple program that assigns to $_ using .
15.A simple version of the cat command using $_.
16.ARGV and the Null Filehandle
17.ARGV in Perl represents the command-line arguments.
18.Aliases and Values
19.Alternative names for Perl system variables.
20.Assign elements in @_ to scalar
21.Assign string array to @ARGV by using qw
22.Assign value to @_
23.Build the ARGV array with qw function
24.@_ has runtime scope.
25.A more expanded version for showing how to use the $_
26.Built-in variables: $_
27.Call-by-Reference and the @_ Array
28.Capturing fatal errors
29.Catching the sigINT signal
30.Code the $_ specifically
31.Compare value entered with number with underscore
32.Error message is stored in $!
33.Extracts information from the $] variable.
34.$! is the error number
35.$! stores the error message
36.$" is the separator
37.$# is the default format
38.$(dollar), is the separator
39.$MATCH = $&
40.$SIG{__DIE__}
41.$SIG{__WARN__} = 'IGNORE';
42.$SIG{__WARN__} = sub {die "Warning: $_[0]"};
43.$\ is 'END_OF_OUTPUT'
44.$^ is the format header
45.$^O stores the name of the operating system
46.$^S: is inside eval
47.$^W: Check the '-w switch'
48.$^X: get the Perl execuatable file name
49.$_ for print function
50.$_ stores the user input
51.$~ is the format
52.%INC values
53.File-searching program using $ARGV.
54.Get Computer Name key in the %ENV
55.Get local time from $^T
56.If $_contains needle, the string is printed.
57.Integer signal
58.Lines Remaining on the Page: $-
59.List all command line argument
60.Local builtin var
61.Locate all numbers less than 6
62.Manipuate @_ and return @_
63.Mannually change the $1 variable
64.Match: $&
65.Perl 5 Built-In Variables
66.Perl's modules reside in the directories named in the @INC array, or subdirectories
67.Perl's special arrays
68.Postmatch $'
69.Prematch: $`
70.Print all command line argument
71.Print the default variable's ($_) value
72.Quick Sum
73.Read and set environment variables?
74.Read lines from supplied filenames
75.Reference element in @_
76.Resetting array base
77.Retrieving the Entire Pattern: $&
78.Saving in the $& special scalar
79.Set the $/ and chomp
80.Special Variables
81.System variables that control how write sends output to a file
82.Test of open and die with $!.
83.The $_ Scalar Variable
84.The @* field
85.The @ISA Array and Calling Methods
86.The Argument Vector @ARGV
87.The Pattern-Matching Operator and $_
88.The Substitution Operator and $_
89.The code executes a line of code you type as long as that line doesn't start with a #
90.The environment associative array: Associative arrays %ENV holds your system's environment variables.
91.The following functions and operators work with the $_ variable by default:
92.The shift operator returns an undefined value if the array has no more elements.
93.To list all .pm files by using the @INC array
94.Use while loop to display all entries in ENV
95.Using $, to set the separator for print command
96.Using $_ (dollar underscore)
97.Using $_ as the array index
98.Using $_ variable with while statement
99.Using %SIG to define our own signal handlers
100.Using @_ directly
101.Using __LINE__ to output line number
102.Using eof and <> together.
103.Using the $. variable.
104.Using the $;(dollar and semicolon) variable.
105.Using the @_ to reference the parameter
106.Using the Default Variable $_
107.Using the diamond operator with @ARGV
108.Using the if statement to check the command line parameters
109.Using the special Perl variable $! in the message passed to die.
110.Using tr to convert all file names passed in to uppercase
111.Verify the total number of the command line parameter
112.Working with $_ usually makes programming much easier, but more confusing to the uninitiated
113.You display the current line of execution in a Perl script by referring to it with the __LINE__ token.
114.You display the name of the current Perl package with __PACKAGE__.
115.You display the name of the current file with the __FILE__ token
116.foreach (@_)
117.foreach loop and $_
118.or die $!
119.or die $^E;
120.print "Hello, $ENV{USER}!\n";
121.print $INC{'English.pm'};
122.print $]; (Perl version number)
123.print out all pm library location
124.prints out each element of @ARGV separately
125.shift: defaults to shifting @ARGV
126.time - $^T
127.undef $/;