Variables let you give names to values and refer to them later. Variables
have already been used in many of the examples. The name of a variable
must be a sequence of letters, digits, or underscores, and it may not begin
with a digit. Case is significant in variable names;
are distinct variables.
A variable name is a valid expression by itself; it represents the
variable's current value. Variables are given new values with
assignment operators, increment operators, and
See Assignment Ops.
In addition, the
gsub() functions can
change a variable's value, and the
split() functions can change the contents of their
array parameters. See String Functions.
A few variables have special built-in meanings, such as
field separator), and
NF (the number of fields in the current input
record). See Built-in Variables, for a list of the built-in variables.
These built-in variables can be used and assigned just like all other
variables, but their values are also used or changed automatically by
awk. All built-in variables' names are entirely uppercase.
Variables in awk can be assigned either numeric or string values. The kind of value a variable holds can change over the life of a program. By default, variables are initialized to the empty string, which is zero if converted to a number. There is no need to explicitly “initialize” a variable in awk, which is what you would do in C and in most other traditional languages.