Gawk/Preface
Next: Getting Started, Previous: Foreword4, Up: Top [Contents][Index]
Preface
Several kinds of tasks occur repeatedly when working with text files.
You might want to extract certain lines and discard the rest. Or you
may need to make changes wherever certain patterns appear, but leave the
rest of the file alone. Such jobs are often easy with awk
.
The awk
utility interprets a special-purpose programming
language that makes it easy to handle simple data-reformatting jobs.
The GNU implementation of awk
is called gawk
; if you
invoke it with the proper options or environment variables,
it is fully compatible with
the POSIX1
specification of the awk
language
and with the Unix version of awk
maintained
by Brian Kernighan.
This means that all
properly written awk
programs should work with gawk
.
So most of the time, we don’t distinguish between gawk
and other
awk
implementations.
Using awk
you can:
- Manage small, personal databases
- Generate reports
- Validate data
- Produce indexes and perform other document-preparation tasks
- Experiment with algorithms that you can adapt later to other computer languages
In addition,
gawk
provides facilities that make it easy to:
- Extract bits and pieces of data for processing
- Sort data
- Perform simple network communications
- Profile and debug
awk
programs - Extend the language with functions written in C or C++
This Web page teaches you about the awk
language and
how you can use it effectively. You should already be familiar with basic
system commands, such as cat
and ls
,2 as well as basic shell
facilities, such as input/output (I/O) redirection and pipes.
Implementations of the awk
language are available for many
different computing environments. This Web page, while describing
the awk
language in general, also describes the particular
implementation of awk
called gawk
(which stands for
“GNU awk
”). gawk
runs on a broad range of Unix systems,
ranging from Intel-architecture PC-based computers
up through large-scale systems.
gawk
has also been ported to Mac OS X,
Microsoft Windows
(all versions),
and OpenVMS.3
• History | The history of gawk and
| |
• Names | What name to use to find awk .
| |
• This Manual | Using this Web page. Includes sample
input files that you can use. | |
• Conventions | Typographical Conventions. | |
• Manual History | Brief history of the GNU project and this
Web page. | |
• How To Contribute | Helping to save the world. | |
• Acknowledgments | Acknowledgments. |
Footnotes
(1)
The 2018 POSIX standard is accessible online at https://pubs.opengroup.org/onlinepubs/9699919799/.
(2)
These utilities are available on POSIX-compliant systems, as well as on traditional Unix-based systems. If you are using some other operating system, you still need to be familiar with the ideas of I/O redirection and pipes.
(3)
Some other, obsolete systems to which gawk
was once ported are no longer supported and the code for those systems
has been removed.
Next: Getting Started, Previous: Foreword4, Up: Top [Contents][Index]