The awk utility:
- treats lines of a text as database records, which can be divided into fields.
- can manipulate the text file database in a variety of ways.
- can analyse and extract data.
- makes use of mathematical and string operators.
- uses common programming constructs, including [[loop?]]s and [[conditional?]] constructs.
- Programs written in awk are generally quite small, making them easy to compose and utilize
- awk uses a line orientated language, rather than [[freeform?]] syntax
- is [[data_driven?]]
- uses [[filename_association?]] rather than numbered streams for file input and output
- supports multiple [[assignment?]]s from a single statement
- the hashbang mechanism requires a switch in order to operate