язык сканирования и обработки шаблонов (pattern scanning and processing language)
Операнды (Operands)
The following operands shall be supported:
program If no -f
option is specified, the first operand to awk
shall be the text of the awk program. The application
shall supply the program operand as a single argument
to awk. If the text does not end in a <newline>, awk
shall interpret the text as if it did.
argument Either of the following two types of argument can be
intermixed:
file A pathname of a file that contains the input
to be read, which is matched against the set
of patterns in the program. If no file
operands are specified, or if a file operand
is '-'
, the standard input shall be used.
assignment
An operand that begins with an <underscore>
or alphabetic character from the portable
character set (see the table in the Base
Definitions volume of POSIX.1‐2017, Section
6.1, Portable Character Set), followed by a
sequence of underscores, digits, and
alphabetics from the portable character set,
followed by the '='
character, shall specify
a variable assignment rather than a pathname.
The characters before the '='
represent the
name of an awk variable; if that name is an
awk reserved word (see Grammar) the behavior
is undefined. The characters following the
<equals-sign> shall be interpreted as if they
appeared in the awk program preceded and
followed by a double-quote ('"'
) character,
as a STRING
token (see Grammar), except that
if the last character is an unescaped
<backslash>, it shall be interpreted as a
literal <backslash> rather than as the first
character of the sequence "\""
. The variable
shall be assigned the value of that STRING
token and, if appropriate, shall be
considered a numeric string (see Expressions
in awk), the variable shall also be assigned
its numeric value. Each such variable
assignment shall occur just prior to the
processing of the following file, if any.
Thus, an assignment before the first file
argument shall be executed after the BEGIN
actions (if any), while an assignment after
the last file argument shall occur before the
END
actions (if any). If there are no file
arguments, assignments shall be executed
before processing the standard input.