\initial {!}
\entry {\code {!} operator}{89}
\entry {\code {!=} operator}{87}
\entry {\code {!~} operator}{23, 33, 35, 75, 87}
\initial {#}
\entry {\code {#} (comment)}{13}
\entry {\code {#!} (executable scripts)}{12}
\initial {$}
\entry {\code {$} (field operator)}{40}
\initial {&}
\entry {\code {&&} operator}{89}
\initial {-}
\entry {\code {--assign} option}{159}
\entry {\code {--compat} option}{160}
\entry {\code {--copyleft} option}{160}
\entry {\code {--copyright} option}{160}
\entry {\code {--field-separator} option}{159}
\entry {\code {--file} option}{159}
\entry {\code {--help} option}{161}
\entry {\code {--lint} option}{161}
\entry {\code {--lint-old} option}{161}
\entry {\code {--posix} option}{161}
\entry {\code {--source} option}{162}
\entry {\code {--traditional} option}{160}
\entry {\code {--usage} option}{161}
\entry {\code {--version} option}{162}
\entry {\code {-f} option}{11, 159}
\entry {\code {-F} option}{46, 159}
\entry {\code {-v} option}{159}
\entry {\code {-W} option}{160}
\initial {/}
\entry {\file {/dev/fd}}{70}
\entry {\file {/dev/pgrpid}}{70}
\entry {\file {/dev/pid}}{70}
\entry {\file {/dev/ppid}}{70}
\entry {\file {/dev/stderr}}{70}
\entry {\file {/dev/stdin}}{70}
\entry {\file {/dev/stdout}}{70}
\entry {\file {/dev/user}}{70, 189}
\initial {=}
\entry {\code {==} operator}{87}
\initial {{\_}}
\entry {\code {_gr_init}}{195}
\entry {\code {_pw_init}}{191}
\entry {\code {_tm_addup}}{177}
\entry {\code {_tm_isleap}}{176}
\initial {{\tt\char 124}}
\entry {\code {||} operator}{89}
\initial {{\tt\char 126}}
\entry {\code {~} operator}{23, 33, 35, 75, 87}
\initial {{\tt\gtr}}
\entry {\code {>} operator}{87}
\entry {\code {>=} operator}{87}
\initial {{\tt\indexbackslash }}
\entry {\code {{\tt\rawbackslashxx }'} regexp operator}{32}
\entry {\code {{\tt\rawbackslashxx }`} regexp operator}{32}
\entry {\code {{\tt\rawbackslashxx }>} regexp operator}{32}
\entry {\code {{\tt\rawbackslashxx }<} regexp operator}{32}
\entry {\code {{\tt\rawbackslashxx }B} regexp operator}{32}
\entry {\code {{\tt\rawbackslashxx }w} regexp operator}{31}
\entry {\code {{\tt\rawbackslashxx }W} regexp operator}{31}
\entry {\code {{\tt\rawbackslashxx }y} regexp operator}{32}
\initial {{\tt\less}}
\entry {\code {<} operator}{87}
\entry {\code {<=} operator}{87}
\initial {A}
\entry {accessing fields}{40}
\entry {account information}{189, 194}
\entry {acronym}{1}
\entry {action, curly braces}{100}
\entry {action, default}{14}
\entry {action, definition of}{100}
\entry {action, empty}{14}
\entry {action, separating statements}{100}
\entry {adding new features}{289}
\entry {addition}{80}
\entry {Aho, Alfred}{1}
\entry {AI programming, using \code {gawk}}{276}
\entry {\code {alarm.awk}}{224}
\entry {amiga}{285}
\entry {anchors in regexps}{27}
\entry {and operator}{89}
\entry {anonymous \code {ftp}}{273, 287}
\entry {applications of \code {awk}}{18}
\entry {\code {ARGC}}{115}
\entry {\code {ARGIND}}{115, 163}
\entry {argument processing}{184}
\entry {arguments in function call}{91}
\entry {arguments, command line}{159}
\entry {\code {ARGV}}{115, 163}
\entry {arithmetic operators}{80}
\entry {array assignment}{123}
\entry {array reference}{122}
\entry {Array subscripts and \code {IGNORECASE}}{122}
\entry {array subscripts, uninitialized variables}{127}
\entry {arrays}{121}
\entry {arrays, associative}{121}
\entry {arrays, definition of}{121}
\entry {arrays, deleting an element}{125}
\entry {arrays, deleting entire contents}{126}
\entry {arrays, multi-dimensional subscripts}{128}
\entry {arrays, presence of elements}{123}
\entry {arrays, sparse}{122}
\entry {arrays, special \code {for} statement}{124}
\entry {arrays, the \code {in} operator}{123}
\entry {artificial intelligence, using \code {gawk}}{276}
\entry {ASCII}{173}
\entry {\code {assert}}{170}
\entry {\code {assert}, C version}{169}
\entry {assertions}{169}
\entry {assignment operators}{82}
\entry {assignment to fields}{42}
\entry {associative arrays}{121}
\entry {\code {atan2}}{134}
\entry {atari}{283}
\entry {automatic initialization}{16}
\entry {\code {awk} language, POSIX version}{25, 27, 28, 30, 48, 62, 66, 79, 80, 84, 93, 107, 108, 109, 113, 136, 142, 152}
\entry {\code {awk} language, V.4 version}{24, 25, 248}
\entry {\code {AWKPATH} environment variable}{164}
\entry {\code {awksed}}{237}
\initial {B}
\entry {backslash continuation}{16, 210}
\entry {backslash continuation and comments}{17}
\entry {backslash continuation in \code {csh}}{15, 17}
\entry {basic function of \code {awk}}{9}
\entry {\file {BBS-list} file}{7}
\entry {\code {BEGIN} special pattern}{98}
\entry {\code {beginfile}}{183}
\entry {body of a loop}{104}
\entry {book, using this}{5}
\entry {boolean expressions}{89}
\entry {boolean operators}{89}
\entry {\code {break} statement}{106}
\entry {\code {break}, outside of loops}{107}
\entry {Brennan, Michael}{126, 237, 287}
\entry {buffer matching operators}{32}
\entry {buffering output}{144, 145}
\entry {buffering, interactive vs. non-interactive}{145}
\entry {buffering, non-interactive vs. interactive}{145}
\entry {buffers, flushing}{144, 145}
\entry {bugs, known in \code {gawk}}{165}
\entry {built-in functions}{133}
\entry {built-in variables}{113}
\entry {built-in variables, convey information}{115}
\entry {built-in variables, user modifiable}{113}
\initial {C}
\entry {call by reference}{154, 155}
\entry {call by value}{154}
\entry {calling a function}{91, 154}
\entry {case conversion}{141}
\entry {case sensitivity}{33}
\entry {changing contents of a field}{42}
\entry {changing the record separator}{37}
\entry {character classes}{28}
\entry {character encodings}{173}
\entry {character list}{27}
\entry {character list, complemented}{29}
\entry {character sets}{173}
\entry {\code {chr}}{172}
\entry {\code {close}}{71, 143}
\entry {closing input files and pipes}{71}
\entry {closing output files and pipes}{71}
\entry {coding style used in \code {gawk}}{290}
\entry {collating elements}{29}
\entry {collating symbols}{29}
\entry {command line}{159}
\entry {command line formats}{10}
\entry {command line, setting \code {FS} on}{46}
\entry {comments}{13}
\entry {comments and backslash continuation}{17}
\entry {common mistakes}{35, 44, 60, 87}
\entry {\code {comp.lang.awk}}{286}
\entry {comparison expressions}{86}
\entry {comparisons, string vs. regexp}{88}
\entry {compatibility mode}{160, 249}
\entry {complemented character list}{29}
\entry {compound statement}{103}
\entry {computed regular expressions}{35}
\entry {concatenation}{81}
\entry {conditional expression}{90}
\entry {configuring \code {gawk}}{279}
\entry {constants, types of}{75}
\entry {continuation of lines}{16}
\entry {\code {continue} statement}{107}
\entry {\code {continue}, outside of loops}{108}
\entry {control statement}{103}
\entry {conversion of case}{141}
\entry {conversion of strings and numbers}{79}
\entry {conversions, during subscripting}{127}
\entry {converting dates to timestamps}{175}
\entry {\code {CONVFMT}}{79, 113, 127}
\entry {\code {cos}}{134}
\entry {\code {csh}, backslash continuation}{15, 17}
\entry {curly braces}{100}
\entry {\code {custom.h} configuration file}{279}
\entry {\code {cut} utility}{201}
\entry {\code {cut.awk}}{202}
\initial {D}
\entry {d.c., see ``dark corner''}{6}
\entry {dark corner}{6, 26, 39, 46, 48, 51, 54, 58, 62, 64, 65, 76, 78, 79, 86, 99, 107, 108, 110, 116, 117, 128, 137, 159, 163}
\entry {data-driven languages}{9}
\entry {dates, converting to timestamps}{175}
\entry {decrement operators}{85}
\entry {default action}{14}
\entry {default pattern}{14}
\entry {defining functions}{151}
\entry {Deifik, Scott}{3, 287}
\entry {\code {delete} statement}{125}
\entry {deleting elements of arrays}{125}
\entry {deleting entire arrays}{126}
\entry {deprecated features}{165}
\entry {deprecated options}{165}
\entry {differences between \code {gawk} and \code {awk}}{33, 39, 46, 53, 58, 69, 74, 75, 76, 81, 91, 100, 109, 119, 126, 133, 137, 140, 164}
\entry {directory search}{164}
\entry {division}{80}
\entry {documenting \code {awk} programs}{13, 199}
\entry {\code {dupword.awk}}{223}
\entry {dynamic regular expressions}{35}
\initial {E}
\entry {EBCDIC}{173}
\entry {\code {egrep}}{10, 28}
\entry {\code {egrep} utility}{206}
\entry {\code {egrep.awk}}{207}
\entry {element assignment}{123}
\entry {element of array}{122}
\entry {empty action}{14}
\entry {empty pattern}{100}
\entry {empty program}{159}
\entry {empty string}{39, 46, 79, 86}
\entry {\code {END} special pattern}{98}
\entry {\code {endfile}}{183}
\entry {\code {endgrent}}{198}
\entry {\code {endpwent}}{193}
\entry {\code {ENVIRON}}{116}
\entry {environment variable, \code {AWKPATH}}{164}
\entry {environment variable, \code {POSIXLY_CORRECT}}{162}
\entry {equivalence classes}{29}
\entry {\code {ERRNO}}{53, 74, 116}
\entry {errors, common}{35, 44, 60, 87}
\entry {escape processing, \code {sub} et. al.}{141}
\entry {escape sequence notation}{24}
\entry {evaluation, order of}{133}
\entry {examining fields}{40}
\entry {executable scripts}{12}
\entry {\code {exit} statement}{110}
\entry {\code {exp}}{134}
\entry {explicit input}{53}
\entry {exponentiation}{80}
\entry {expression}{75}
\entry {expression, assignment}{82}
\entry {expression, boolean}{89}
\entry {expression, comparison}{86}
\entry {expression, conditional}{90}
\entry {expression, matching}{86}
\entry {\code {extract.awk}}{234}
\initial {F}
\entry {features, adding}{289}
\entry {\code {fflush}}{144}
\entry {field operator \code {$}}{40}
\entry {field separator, choice of}{44}
\entry {field separator, \code {FS}}{44}
\entry {field separator, on command line}{46}
\entry {field, changing contents of}{42}
\entry {fields}{40}
\entry {fields, separating}{44}
\entry {\code {FIELDWIDTHS}}{113}
\entry {file descriptors}{69}
\entry {file, \code {awk} program}{11}
\entry {\code {FILENAME}}{37, 58, 116}
\entry {\code {FILENAME}, being set by \code {getline}}{58}
\entry {Fish, Fred}{287}
\entry {flushing buffers}{144, 145}
\entry {\code {FNR}}{40, 116}
\entry {\code {for (x in \dots {})}}{124}
\entry {\code {for} statement}{105}
\entry {format specifier}{63}
\entry {format string}{62}
\entry {format, numeric output}{62}
\entry {formatted output}{62}
\entry {formatted timestamps}{180}
\entry {Free Software Foundation}{1, 273}
\entry {FreeBSD}{2}
\entry {Friedl, Jeffrey}{4}
\entry {\code {FS}}{44, 113}
\entry {\code {ftp}, anonymous}{273, 287}
\entry {function call}{91, 154}
\entry {function definition}{151}
\entry {function, recursive}{152}
\entry {functions, undefined}{155}
\entry {functions, user-defined}{151}
\initial {G}
\entry {\code {gawk} coding style}{290}
\entry {\code {gensub}}{139}
\entry {\code {getgrent}}{198}
\entry {\code {getgrent}, C version}{194}
\entry {\code {getgrgid}}{197}
\entry {\code {getgrnam}}{197}
\entry {\code {getgruser}}{198}
\entry {\code {getline}}{53}
\entry {\code {getline}, return values}{53}
\entry {\code {getline}, setting \code {FILENAME}}{58}
\entry {\code {getopt}}{186}
\entry {\code {getopt}, C version}{184}
\entry {\code {getpwent}}{193}
\entry {\code {getpwent}, C version}{189}
\entry {\code {getpwnam}}{192}
\entry {\code {getpwuid}}{193}
\entry {\code {gettimeofday}}{180}
\entry {getting \code {gawk}}{273}
\entry {GNU Project}{1}
\entry {\code {grcat} program}{194}
\entry {\code {grcat.c}}{194}
\entry {group file}{194}
\entry {group information}{194}
\entry {\code {gsub}}{139}
\entry {\code {gsub}, third argument of}{139}
\initial {H}
\entry {Hankerson, Darrel}{3, 287}
\entry {historical features}{47, 107, 108, 136, 271}
\entry {history of \code {awk}}{1}
\entry {\code {histsort.awk}}{233}
\entry {how \code {awk} works}{14}
\entry {Hughes, Phil}{4}
\initial {I}
\entry {I/O from \code {BEGIN} and \code {END}}{99}
\entry {\code {id} utility}{210}
\entry {\code {id.awk}}{211}
\entry {\code {if}-\code {else} statement}{103}
\entry {\code {igawk.sh}}{241}
\entry {\code {IGNORECASE}}{33, 114, 122}
\entry {\code {IGNORECASE} and array subscripts}{122}
\entry {ignoring case}{33}
\entry {implementation limits}{58, 69}
\entry {\code {in} operator}{87}
\entry {increment operators}{85}
\entry {\code {index}}{135}
\entry {initialization, automatic}{16}
\entry {input}{37}
\entry {input file, sample}{7}
\entry {input files, skipping}{167}
\entry {input pipeline}{56}
\entry {input redirection}{55}
\entry {input, explicit}{53}
\entry {input, \code {getline} command}{53}
\entry {input, multiple line records}{50}
\entry {input, standard}{11}
\entry {installation, amiga}{285}
\entry {installation, atari}{283}
\entry {installation, MS-DOS and OS/2}{282}
\entry {installation, unix}{278}
\entry {installation, vms}{279}
\entry {\code {int}}{134}
\entry {interaction, \code {awk} and other programs}{144}
\entry {interactive buffering vs. non-interactive}{145}
\entry {interval expressions}{30}
\entry {\file {inventory-shipped} file}{7}
\entry {invocation of \code {gawk}}{159}
\entry {ISO 8601}{149}
\entry {ISO 8859-1}{34, 296}
\entry {ISO Latin-1}{34, 296}
\initial {J}
\entry {Jaegermann, Michal}{3, 287}
\entry {\code {join}}{174}
\initial {K}
\entry {Kernighan, Brian}{1, 4, 81, 249, 287}
\entry {known bugs}{165}
\initial {L}
\entry {\code {labels.awk}}{229}
\entry {language, \code {awk}}{5}
\entry {language, data-driven}{9}
\entry {language, procedural}{9}
\entry {leftmost longest match}{34, 51}
\entry {\code {length}}{136}
\entry {limitations}{58, 69}
\entry {line break}{16}
\entry {line continuation}{16, 61, 90, 91}
\entry {Linux}{2, 283}
\entry {locale, definition of}{148}
\entry {\code {log}}{134}
\entry {logical false}{86}
\entry {logical operations}{89}
\entry {logical true}{86}
\entry {login information}{189}
\entry {long options}{159}
\entry {loop}{104}
\entry {loops, exiting}{106}
\entry {lvalue}{82}
\initial {M}
\entry {mark parity}{173}
\entry {\code {match}}{136}
\entry {matching ranges of lines}{97}
\entry {matching, leftmost longest}{34, 51}
\entry {\code {mawk}}{287}
\entry {merging strings}{174}
\entry {metacharacters}{26}
\entry {mistakes, common}{35, 44, 60, 87}
\entry {\code {mktime}}{178}
\entry {modifiers (in format specifiers)}{64}
\entry {multi-dimensional subscripts}{128}
\entry {multiple line records}{50}
\entry {multiple passes over data}{164}
\entry {multiple statements on one line}{18}
\entry {multiplication}{80}
\initial {N}
\entry {names, use of}{151}
\entry {namespace issues in \code {awk}}{199}
\entry {namespaces}{151}
\entry {NetBSD}{2}
\entry {new \code {awk}}{1}
\entry {new \code {awk} vs. old \code {awk}}{9}
\entry {newline}{16}
\entry {\code {next file} statement}{110}
\entry {\code {next} statement}{108}
\entry {\code {next}, inside a user-defined function}{109}
\entry {\code {nextfile} function}{168}
\entry {\code {nextfile} statement}{109}
\entry {\code {NF}}{40, 116}
\entry {non-interactive buffering vs. interactive}{145}
\entry {not operator}{89}
\entry {\code {NR}}{40, 116}
\entry {null string}{46, 79, 86}
\entry {null string, as array subscript}{128}
\entry {number of fields, \code {NF}}{40}
\entry {number of records, \code {NR}, \code {FNR}}{40}
\entry {numbers, used as subscripts}{127}
\entry {numeric character values}{172}
\entry {numeric constant}{75}
\entry {numeric output format}{62}
\entry {numeric string}{86}
\entry {numeric value}{75}
\initial {O}
\entry {obsolete features}{165}
\entry {obsolete options}{165}
\entry {\code {OFMT}}{62, 79, 114}
\entry {\code {OFS}}{61, 114}
\entry {old \code {awk}}{1}
\entry {old \code {awk} vs. new \code {awk}}{9}
\entry {one-liners}{21}
\entry {operations, logical}{89}
\entry {operator precedence}{92}
\entry {operators, arithmetic}{80}
\entry {operators, assignment}{82}
\entry {operators, boolean}{89}
\entry {operators, decrement}{85}
\entry {operators, increment}{85}
\entry {operators, regexp matching}{23}
\entry {operators, relational}{86, 87}
\entry {operators, short-circuit}{89}
\entry {operators, string}{81}
\entry {operators, string-matching}{23}
\entry {options, command line}{159}
\entry {options, long}{159}
\entry {or operator}{89}
\entry {\code {ord}}{172}
\entry {order of evaluation}{133}
\entry {\code {ORS}}{61, 114}
\entry {output}{59}
\entry {output field separator, \code {OFS}}{61}
\entry {output format specifier, \code {OFMT}}{62}
\entry {output record separator, \code {ORS}}{61}
\entry {output redirection}{67}
\entry {output, buffering}{144, 145}
\entry {output, formatted}{62}
\entry {output, piping}{68}
\initial {P}
\entry {passes, multiple}{164}
\entry {password file}{189}
\entry {path, search}{164}
\entry {pattern, \code {BEGIN}}{98}
\entry {pattern, default}{14}
\entry {pattern, definition of}{95}
\entry {pattern, empty}{100}
\entry {pattern, \code {END}}{98}
\entry {pattern, range}{97}
\entry {pattern, regular expressions}{23}
\entry {patterns, types of}{95}
\entry {per file initialization and clean-up}{182}
\entry {PERL}{293}
\entry {pipeline, input}{56}
\entry {pipes for output}{68}
\entry {portability issues}{17, 25, 74, 126, 136, 144, 152, 167}
\entry {porting \code {gawk}}{291}
\entry {POSIX \code {awk}}{25, 27, 28, 30, 48, 62, 66, 79, 80, 84, 93, 107, 108, 109, 113, 136, 142, 152}
\entry {POSIX mode}{161}
\entry {\code {POSIXLY_CORRECT} environment variable}{162}
\entry {precedence}{92}
\entry {precedence, regexp operators}{31}
\entry {\code {print} statement}{59}
\entry {\code {printf} statement, syntax of}{62}
\entry {\code {printf}, format-control characters}{63}
\entry {\code {printf}, modifiers}{64}
\entry {printing}{59}
\entry {procedural languages}{9}
\entry {process information}{70}
\entry {processing arguments}{184}
\entry {program file}{11}
\entry {program, \code {awk}}{5}
\entry {program, definition of}{9}
\entry {program, self contained}{12}
\entry {programs, documenting}{13, 199}
\entry {\code {pwcat} program}{189}
\entry {\code {pwcat.c}}{190}
\initial {Q}
\entry {quotient}{80}
\entry {quoting, shell}{11, 12}
\initial {R}
\entry {Rakitzis, Byron}{233}
\entry {\code {rand}}{134}
\entry {random numbers, seed of}{135}
\entry {range pattern}{97}
\entry {Rankin, Pat}{3, 83, 287}
\entry {reading files}{37}
\entry {reading files, \code {getline} command}{53}
\entry {reading files, multiple line records}{50}
\entry {record separator, \code {RS}}{37}
\entry {record terminator, \code {RT}}{39}
\entry {record, definition of}{37}
\entry {records, multiple line}{50}
\entry {recursive function}{152}
\entry {redirection of input}{55}
\entry {redirection of output}{67}
\entry {reference to array}{122}
\entry {regexp}{23}
\entry {regexp as expression}{89}
\entry {regexp comparison vs. string comparison}{88}
\entry {regexp constant}{24}
\entry {regexp constants, difference between slashes and quotes}{35}
\entry {regexp match/non-match operators}{23, 86}
\entry {regexp matching operators}{23}
\entry {regexp operators}{26}
\entry {regexp operators, GNU specific}{31}
\entry {regexp operators, precedence of}{31}
\entry {regexp, anchors}{27}
\entry {regexp, dynamic}{35}
\entry {regexp, effect of command line options}{32}
\entry {regular expression}{23}
\entry {regular expression metacharacters}{26}
\entry {regular expressions as field separators}{44}
\entry {regular expressions as patterns}{23}
\entry {regular expressions as record separators}{39}
\entry {regular expressions, computed}{35}
\entry {relational operators}{86, 87}
\entry {remainder}{80}
\entry {removing elements of arrays}{125}
\entry {\code {return} statement}{156}
\entry {RFC-1036}{149}
\entry {RFC-822}{149}
\entry {\code {RLENGTH}}{116, 136}
\entry {Robbins, Miriam}{4}
\entry {Rommel, Kai Uwe}{3, 287}
\entry {\code {round}}{171}
\entry {rounding}{171}
\entry {\code {RS}}{37, 114}
\entry {\code {RSTART}}{117, 136}
\entry {\code {RT}}{39, 53, 117}
\entry {rule, definition of}{9}
\entry {running \code {awk} programs}{10}
\entry {running long programs}{11}
\entry {rvalue}{82}
\initial {S}
\entry {sample input file}{7}
\entry {scanning an array}{124}
\entry {script, definition of}{9}
\entry {scripts, executable}{12}
\entry {scripts, shell}{12}
\entry {search path}{164}
\entry {search path, for source files}{164}
\entry {\code {sed} utility}{48, 237, 241}
\entry {seed for random numbers}{135}
\entry {self contained programs}{12}
\entry {shell quoting}{11, 12}
\entry {shell scripts}{12}
\entry {short-circuit operators}{89}
\entry {side effect}{82}
\entry {simple stream editor}{237}
\entry {\code {sin}}{134}
\entry {single character fields}{46}
\entry {single quotes, why needed}{10}
\entry {skipping input files}{167}
\entry {skipping lines between markers}{98}
\entry {sparse arrays}{122}
\entry {\code {split}}{137}
\entry {\code {split} utility}{212}
\entry {\code {split.awk}}{213}
\entry {\code {sprintf}}{137}
\entry {\code {sqrt}}{134}
\entry {\code {srand}}{135}
\entry {Stallman, Richard}{1, 3}
\entry {standard error output}{69}
\entry {standard input}{11, 37, 69}
\entry {standard output}{69}
\entry {statement, compound}{103}
\entry {stream editor}{48}
\entry {stream editor, simple}{237}
\entry {\code {strftime}}{147}
\entry {string comparison vs. regexp comparison}{88}
\entry {string constants}{75}
\entry {string operators}{81}
\entry {string-matching operators}{23}
\entry {\code {sub}}{138}
\entry {\code {sub}, third argument of}{139}
\entry {subscripts in arrays}{128}
\entry {\code {SUBSEP}}{114, 128}
\entry {\code {substr}}{140}
\entry {subtraction}{80}
\entry {\code {system}}{144}
\entry {\code {systime}}{146}
\initial {T}
\entry {Tcl}{200}
\entry {\code {tee} utility}{214}
\entry {\code {tee.awk}}{214}
\entry {terminator, record}{39}
\entry {time of day}{146}
\entry {timestamps}{146}
\entry {timestamps, converting from dates}{175}
\entry {timestamps, formatted}{180}
\entry {\code {tolower}}{141}
\entry {\code {toupper}}{141}
\entry {\code {translate.awk}}{227}
\entry {Trueman, David}{3}
\entry {truth values}{86}
\entry {type conversion}{79}
\entry {types of variables}{82, 86}
\initial {U}
\entry {undefined functions}{155}
\entry {undocumented features}{165}
\entry {uninitialized variables, as array subscripts}{127}
\entry {\code {uniq} utility}{216}
\entry {\code {uniq.awk}}{217}
\entry {use of comments}{13}
\entry {user information}{189}
\entry {user-defined functions}{151}
\entry {user-defined variables}{77}
\entry {uses of \code {awk}}{5}
\entry {using this book}{5}
\initial {V}
\entry {values of characters as numbers}{172}
\entry {variable shadowing}{152}
\entry {variable typing}{86}
\entry {variables, user-defined}{77}
\initial {W}
\entry {Wall, Larry}{293}
\entry {\code {wc} utility}{220}
\entry {\code {wc.awk}}{221}
\entry {Weinberger, Peter}{1}
\entry {when to use \code {awk}}{18}
\entry {\code {while} statement}{104}
\entry {word boundaries, matching}{32}
\entry {word, regexp definition of}{31}
\entry {\code {wordfreq.sh}}{231}
