Extensions in the Bell Laboratories `awk'
=========================================
Brian Kernighan, one of the original designers of Unix `awk', has
made his version available via his home page (Note:Other Freely
Available `awk' Implementations.). This minor node
describes extensions in his version of `awk' that are not in POSIX
`awk'.
* The `-mf N' and `-mr N' command-line options to set the maximum
number of fields and the maximum record size, respectively (Note:Command-Line Options.). As a side note, his `awk' no
longer needs these options; it continues to accept them to avoid
breaking old programs.
* The `fflush' built-in function for flushing buffered output (Note:Input/Output Functions.).
* The `**' and `**=' operators (*note Arithmetic Operators:
Arithmetic Ops. and Note:Assignment Expressions.
* The use of `func' as an abbreviation for `function' (Note:Function Definition Syntax.).
The Bell Laboratories `awk' also incorporates the following
extensions, originally developed for `gawk':
* The `\x' escape sequence (Note:Escape Sequences).
* The `/dev/stdin', `/dev/stdout', and `/dev/stderr' special files
(Note:Special File Names in `gawk'.).
* The ability for `FS' and for the third argument to `split' to be
null strings (Note:Making Each Character a Separate Field.
).
* The `nextfile' statement (Note:Using `gawk''s `nextfile'
Statement.).
* The ability to delete all of an array at once with `delete ARRAY'
(Note:The `delete' Statement.).