Name

awk

awk 'instructions' files
awk -f script files

The awk script contained in instructions or script should be a series of /pattern/ {action} pairs. The action code is applied to each line matched by pattern. awk also supplies several functions for pattern matching.

Functions

match(text, pattern)

If pattern matches in text, return the position in text where the match starts. A failed match returns zero. A successful match also sets the variable RSTART to the position where the match started, and the variable RLENGTH to the number of characters in the match.

gsub(pattern, replacement, text)

Substitute each match of pattern in text with replacement, and return the number of substitutions. Defaults to $0 if text is not supplied.

sub(pattern, replacement, text)

Substitute first match of pattern in text with replacement. A successful substitution returns 1, and an unsuccessful substitution returns 0. Defaults to $0 if text is not supplied.

Example

Create an awk file and then run it from the command line.

$ cat sub.awk
{
    gsub(/https?:\/\/[a-z_.\\w\/\\#~:?+=&;%@!-]*/,

                    "<a href=\"\&\">\&</a>");

    print
}

$ echo "Check the web site, http://www.oreilly.com/
catalog/repr" | awk -f sub.awk

Get Regular Expression Pocket Reference, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.