|
Go to the previous, next chapter.
An awk program or script consists of a series of
rules and function definitions,
interspersed. (Functions are described later. See section User-defined Functions.)
A rule contains a pattern and an action, either of which may be
omitted. The purpose of the action
is to tell awk what to do once a match for the pattern is found. Thus, the entire
program looks somewhat like this:
[pattern] [{ action }]
[pattern] [{ action }]
...
function name (args) { ... }
...
An action consists of one or
more awk statements, enclosed in curly braces ({ and }).
Each statement specifies one thing to be done. The statements are
separated by newlines or semicolons.
The curly braces around an action must be used even if the action contains only one statement,
or even if it contains no statements at all. However, if you omit
the action entirely, omit the
curly braces as well. (An
omitted action is equivalent to {
print $0 }.)
Here are the kinds of statements supported in awk:
- Expressions, which can call functions or assign values to
variables (see section Expressions
as Action Statements). Executing this kind of
statement simply computes the value of the expression and
then ignores it. This is useful when the expression has
side effects (see section Assignment
Expressions).
- Control statements, which specify the control flow of
awk
programs. The awk language gives you C-like constructs (if, for, while,
and so on) as well as a few special ones (see section Control Statements in Actions).
- Compound statements, which consist of one or more
statements enclosed in curly braces. A compound
statement is used in order to put several statements
together in the body of an
if, while, do
or for statement.
- Input control, using the
getline command
(see section 'Explicit Input with next statement. Output
statements, print and printf.
See section Printing Output.
- Deletion statements, for deleting array elements. The
delete
Statement
To return to the Ready-to-Run Software Win95Pak Table of Contents please press here.
|