awk
divides the input for your program into records and fields.
It keeps track of the number of records that have been read so far from
the current input file. This value is stored in a predefined variable
called FNR
, which is reset to zero every time a new file is started.
Another predefined variable, NR
, records the total number of input
records read so far from all data files. It starts at zero, but is
never automatically reset to zero.
Normally, records are separated by newline characters. You can control how
records are separated by assigning values to the built-in variable RS
.
If RS
is any single character, that character separates records.
Otherwise (in gawk
), RS
is treated as a regular expression.
This mechanism is explained in greater detail shortly.
NOTE: When
gawk
is invoked with the --csv option, nothing in this section applies. See Working With Comma Separated Value Files, for the details.