Awk is a general-purpose scripting language designed for advanced text processing. It is mostly used as a reporting and analysis tool.
Unlike most other programming languages that are procedural, awk is data-driven, which means that you define a set of actions to be performed against the input text. It takes the input data, transforms it, and sends the result to standard output.