[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
7.3 Actions
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 (but not
both) may be omitted. The purpose of the action is to tell
awk
what to do once a match for the pattern is found. Thus,
in outline, an awk
program generally looks like this:
[pattern] { action } pattern [{ action }] … function name(args) { … } … |
An action consists of one or more awk
statements, enclosed
in curly braces (‘{…}’). Each statement specifies one
thing to do. 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 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 }’:
/foo/ { } match |
The following types of statements are supported in awk
:
- Expressions
Call functions or assign values to variables (see section Expressions). Executing this kind of statement simply computes the value of the expression. This is useful when the expression has side effects (see section Assignment Expressions).
- Control statements
Specify the control flow of
awk
programs. Theawk
language gives you C-like constructs (if
,for
,while
, anddo
) as well as a few special ones (see section Control Statements in Actions).- Compound statements
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
, orfor
statement.- Input statements
Use the
getline
command (see section Explicit Input withgetline
). Also supplied inawk
are thenext
statement (see section Thenext
Statement), and thenextfile
statement (see section Usinggawk
’snextfile
Statement).- Output statements
Such as
print
andprintf
. See section Printing Output.- Deletion statements
For deleting array elements. See section The
delete
Statement.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |