21.07.2015 Views

GAWK: Effective AWK Programming

GAWK: Effective AWK Programming

GAWK: Effective AWK Programming

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

338 <strong>G<strong>AWK</strong></strong>: <strong>Effective</strong> <strong>AWK</strong> <strong>Programming</strong>artificial intelligence, gawk and . . . . . . . . . . . . . . . . 266ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194asort function (gawk). . . . . . . . . . . . . . . . . . . . 127, 132asort function (gawk), arrays, sorting . . . . . . . . . 127asorti function (gawk) . . . . . . . . . . . . . . . . . . . . . . . 133assert function (C library) . . . . . . . . . . . . . . . . . . . 190assert user-defined function . . . . . . . . . . . . . . . . . . 191assertions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190assignment operators . . . . . . . . . . . . . . . . . . . . . . . . . . 83assignment operators, evaluation order . . . . . . . . . 85assignment operators, lvalues/rvalues . . . . . . . . . . 84assignments as filenames. . . . . . . . . . . . . . . . . . . . . . 200assoc_clear internal function . . . . . . . . . . . . . . . . 288assoc_lookup internal function . . . . . . . . . . . . . . . 288associative arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119asterisk (*), * operator, as multiplication operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95asterisk (*), * operator, as regexp operator . . . . . 28asterisk (*), * operator, null strings, matching. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143asterisk (*), ** operator . . . . . . . . . . . . . . . 82, 94, 180asterisk (*), **= operator. . . . . . . . . . . . . . 85, 95, 180asterisk (*), *= operator. . . . . . . . . . . . . . . . . . . . 85, 95atan2 function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131atari . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277awf (amazingly workable formatter) program . . 306awk language, POSIX version . . . . . . . . . . . . . . . . . . 85awk programs . . . . . . . . . . . . . . . . . . . . . . . . . . 11, 13, 19awk programs, complex . . . . . . . . . . . . . . . . . . . . . . . . 23awk programs, documenting . . . . . . . . . . . . . . . 14, 186awk programs, examples of . . . . . . . . . . . . . . . . . . . . 215awk programs, execution of . . . . . . . . . . . . . . . . . . . 108awk programs, internationalizing . . . . . . . . . 152, 162awk programs, lengthy . . . . . . . . . . . . . . . . . . . . . . . . . 12awk programs, lengthy, assertions . . . . . . . . . . . . . 190awk programs, location of . . . . . . . . . . . . . . . . 177, 179awk programs, one-line examples . . . . . . . . . . . . . . . 18awk programs, profiling . . . . . . . . . . . . . . . . . . . . . . . 173awk programs, profiling, enabling . . . . . . . . . . . . . 181awk programs, running . . . . . . . . . . . . . . . . . . . . . 11, 12awk programs, running, from shell scripts . . . . . . 11awk programs, running, without input files . . . . . 12awk programs, shell variables in . . . . . . . . . . . . . . . 100awk, function of. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11awk, gawk and . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3, 5awk, history of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4awk, implementation issues, pipes . . . . . . . . . . . . . . 68awk, implementations . . . . . . . . . . . . . . . . . . . . . . . . . 281awk, implementations, limits . . . . . . . . . . . . . . . . . . . 56awk, invoking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177awk, new vs. old . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4awk, new vs. old, OFMT variable . . . . . . . . . . . . . . . . . 80awk, POSIX and . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3awk, POSIX and, See Also POSIX awk . . . . . . . . . . 3awk, regexp constants and . . . . . . . . . . . . . . . . . . . . . 90awk, See Also gawk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3awk, terms describing . . . . . . . . . . . . . . . . . . . . . . . . . . . 5awk, uses for. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3, 11, 23awk, versions of . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4, 257awk, versions of, changes between SVR3.1 andSVR4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258awk, versions of, changes between SVR4 andPOSIX awk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258awk, versions of, changes between V7 and SVR3.1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257awk, versions of, See Also Bell Laboratories awk. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259awk.h file (internal) . . . . . . . . . . . . . . . . . . . . . . . . . . 287awka compiler for awk. . . . . . . . . . . . . . . . . . . . . . . . . 282<strong>AWK</strong>NUM internal type. . . . . . . . . . . . . . . . . . . . . . . . . . 288<strong>AWK</strong>PATH environment variable . . . . . . . . . . . . . . . . 183<strong>AWK</strong>PATH environment variable . . . . . . . . . . . . . . . . 273awkprof.out file. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173awksed.awk program . . . . . . . . . . . . . . . . . . . . . . . . . 248awkvars.out file. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179Bbackslash (\) . . . . . . . . . . . . . . . . . . . . . . . 12, 14, 15, 27backslash (\), \" escape sequence . . . . . . . . . . . . . . 26backslash (\), \’ operator (gawk) . . . . . . . . . . . . . . 31backslash (\), \/ escape sequence . . . . . . . . . . . . . . 26backslash (\), \< operator (gawk) . . . . . . . . . . . . . . 31backslash (\), \> operator (gawk) . . . . . . . . . . . . . . 31backslash (\), \‘ operator (gawk) . . . . . . . . . . . . . . 31backslash (\), \a escape sequence . . . . . . . . . . . . . . 25backslash (\), \b escape sequence . . . . . . . . . . . . . . 25backslash (\), \B operator (gawk) . . . . . . . . . . . . . . 31backslash (\), \f escape sequence . . . . . . . . . . . . . . 25backslash (\), \n escape sequence . . . . . . . . . . . . . . 25backslash (\), \nnn escape sequence . . . . . . . . . . . 25backslash (\), \r escape sequence . . . . . . . . . . . . . . 25backslash (\), \t escape sequence . . . . . . . . . . . . . . 25backslash (\), \v escape sequence . . . . . . . . . . . . . . 25backslash (\), \w operator (gawk) . . . . . . . . . . . . . . 31backslash (\), \W operator (gawk) . . . . . . . . . . . . . . 31backslash (\), \x escape sequence . . . . . . . . . . . . . . 25backslash (\), \y operator (gawk) . . . . . . . . . . . . . . 31backslash (\), as field separators . . . . . . . . . . . . . . . 46backslash (\), continuing lines and . . . . . . . . 21, 224backslash (\), continuing lines and, comments and. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22backslash (\), continuing lines and, in csh . . 20, 21backslash (\), gsub/gensub/sub functions and. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140backslash (\), in character lists . . . . . . . . . . . . . . . . 29backslash (\), in escape sequences . . . . . . . . . . 25, 26backslash (\), in escape sequences, POSIX and. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26backslash (\), regexp constants . . . . . . . . . . . . . . . . 34BBS-list file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Beebe, Nelson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Beebe, Nelson H.F. . . . . . . . . . . . . . . . . . . . . . . . . . . . 283BEGIN pattern . . . . . . . . . . . . . . . . . . . . . . . . . . 36, 43, 99BEGIN pattern, assert user-defined function and. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!