Node:Getting Started, Next:Regexp, Previous:Preface, Up:Top
awk
The basic function of awk
is to search files for lines (or other
units of text) that contain certain patterns. When a line matches one
of the patterns, awk
performs specified actions on that line.
awk
keeps processing input lines in this way until it reaches
the end of the input files.
Programs in awk
are different from programs in most other languages,
because awk
programs are data-driven; that is, you describe
the data you want to work with and then what to do when you find it.
Most other languages are procedural; you have to describe, in great
detail, every step the program is to take. When working with procedural
languages, it is usually much
harder to clearly describe the data your program will process.
For this reason, awk
programs are often refreshingly easy to
read and write.
When you run awk
, you specify an awk
program that
tells awk
what to do. The program consists of a series of
rules. (It may also contain function definitions,
an advanced feature that we will ignore for now.
See User-Defined Functions.) Each rule specifies one
pattern to search for and one action to perform
upon finding the pattern.
Syntactically, a rule consists of a pattern followed by an action. The
action is enclosed in curly braces to separate it from the pattern.
Newlines usually separate rules. Therefore, an awk
program looks like this:
pattern { action } pattern { action } ...
gawk
programs; includes
command-line syntax.
awk
programs illustrated in this Web page.
awk
.
gawk
and when to use
other things.