Preface (The GNU Awk User’s Guide)

From Get docs
Gawk/docs/latest/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 awk.
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/. /@w

(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]