1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
|
\initial {#}
\entry {#!}{17}
\initial {$}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing $}\hbox {} (field operator)}{25}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing $NF}\hbox {}, last field in record}{25}
\initial {-}
\entry {-f option}{16}
\initial {`}
\entry {`{\fam \ttfam \tentt \rawbackslash \frenchspacing BBS-list}'\hbox {} file}{9}
\entry {`{\fam \ttfam \tentt \rawbackslash \frenchspacing inventory-shipped}'\hbox {} file}{10}
\initial {{\fam \ttfam \tentt \char '174}}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing {\fam \ttfam \tentt \char '174}}\hbox {}}{42}
\initial {{\fam \ttfam \tentt \gtr }}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing {\fam \ttfam \tentt \gtr }}\hbox {}}{42}
\initial {{\fam \ttfam \tentt \gtr }}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing {\fam \ttfam \tentt \gtr }{\fam \ttfam \tentt \gtr }}\hbox {}}{42}
\initial {A}
\entry {Accessing fields}{24}
\entry {Acronym}{1}
\entry {Action, curly braces}{11, 61}
\entry {Action, default}{12}
\entry {Action, definition of}{11}
\entry {Action, general}{61}
\entry {Action, separating statements}{61}
\entry {Applications of {\fam \ttfam \tentt \rawbackslash \frenchspacing awk}\hbox {}}{21}
\entry {Arguments in function call}{73}
\entry {Arguments, Command Line}{18}
\entry {Arithmetic operators}{65}
\entry {Array assignment}{86}
\entry {Array reference}{85}
\entry {Arrays}{83}
\entry {Arrays, definition of}{83}
\entry {Arrays, deleting an element}{88}
\entry {Arrays, determining presence of elements}{85}
\entry {Arrays, multi-dimensional subscripts}{89}
\entry {Arrays, special {\fam \ttfam \tentt \rawbackslash \frenchspacing for}\hbox {} statement}{87}
\entry {Assignment operators}{68}
\entry {Associative arrays}{83}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing awk}\hbox {} language}{9}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing awk}\hbox {} program}{9}
\initial {B}
\entry {Backslash Continuation}{20}
\entry {Basic function of {\fam \ttfam \tentt \rawbackslash \frenchspacing gawk}\hbox {}}{11}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing BEGIN}\hbox {}, special pattern}{57}
\entry {Body of a loop}{76}
\entry {Boolean expressions}{67}
\entry {Boolean operators}{67}
\entry {Boolean patterns}{58}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing break}\hbox {} statement}{79}
\entry {Built-in functions, list of}{93}
\entry {Built-in variables}{64}
\initial {C}
\entry {Calling a function}{73}
\entry {Case sensitivity and gawk}{16}
\entry {Changing contents of a field}{27}
\entry {Changing the record separator}{23}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing close}\hbox {} statement for input}{36}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing close}\hbox {} statement for output}{43}
\entry {Closing files and pipes}{43}
\entry {Command Line}{18}
\entry {Command line formats}{14}
\entry {Command line, setting {\fam \ttfam \tentt \rawbackslash \frenchspacing FS}\hbox {} on}{29}
\entry {Comments}{19}
\entry {Comparison expressions}{66}
\entry {Comparison expressions as patterns}{55}
\entry {Compound statements}{61}
\entry {Computed Regular Expressions}{52}
\entry {Concatenation}{65}
\entry {Conditional expression}{72}
\entry {Conditional Patterns}{59}
\entry {Constants, types of}{63}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing continue}\hbox {} statement}{80}
\entry {Continuing statements on the next line}{20}
\entry {Conversion of strings and numbers}{71}
\entry {Curly braces}{11, 61}
\initial {D}
\entry {Default action}{12}
\entry {Default pattern}{12}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing delete}\hbox {} statement}{88}
\entry {Deleting elements of arrays}{88}
\entry {Differences between {\fam \ttfam \tentt \rawbackslash \frenchspacing gawk}\hbox {} and {\fam \ttfam \tentt \rawbackslash \frenchspacing awk}\hbox {}}{63, 65}
\entry {Documenting {\fam \ttfam \tentt \rawbackslash \frenchspacing awk}\hbox {} programs}{19}
\entry {Dynamic Regular Expressions}{52}
\initial {E}
\entry {Element assignment}{86}
\entry {Element of array}{85}
\entry {Emacs Lisp}{21}
\entry {Empty pattern}{51}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing END}\hbox {}, special pattern}{57}
\entry {Escape sequence notation}{63}
\entry {Examining fields}{24}
\entry {Executable Scripts}{17}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing exit}\hbox {} statement}{82}
\entry {Expression, conditional}{72}
\entry {Expressions}{61}
\entry {Expressions, boolean}{67}
\entry {Expressions, comparison}{66}
\initial {F}
\entry {Field separator, choice of}{29}
\entry {Field separator, {\fam \ttfam \tentt \rawbackslash \frenchspacing FS}\hbox {}}{28}
\entry {Field separator, setting on command line}{29}
\entry {Field, changing contents of}{27}
\entry {Fields}{24}
\entry {Fields, negative-numbered}{26}
\entry {Fields, semantics of}{28}
\entry {Fields, separating}{28}
\entry {file, {\fam \ttfam \tentt \rawbackslash \frenchspacing awk}\hbox {} program}{16}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing for (x in \dots {})}\hbox {}}{87}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing for}\hbox {} statement}{77}
\entry {Format specifier}{45}
\entry {Format string}{45}
\entry {Formatted output}{44}
\entry {Function call}{73}
\entry {Function definitions}{61}
\entry {Functions, user-defined}{99}
\initial {G}
\entry {General input}{23}
\initial {H}
\entry {History of {\fam \ttfam \tentt \rawbackslash \frenchspacing awk}\hbox {}}{1}
\entry {How gawk works}{12}
\initial {I}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing if}\hbox {} statement}{75}
\entry {Increment operators}{70}
\entry {Input file, sample}{9}
\entry {Input, general}{23}
\entry {Input, {\fam \ttfam \tentt \rawbackslash \frenchspacing getline}\hbox {} function}{32}
\entry {Input, multiple line records}{31}
\entry {Input, standard}{15, 23}
\entry {Interaction of {\fam \ttfam \tentt \rawbackslash \frenchspacing awk}\hbox {} with other programs}{98}
\entry {Invocation of {\fam \ttfam \tentt \rawbackslash \frenchspacing gawk}\hbox {}}{18}
\initial {L}
\entry {Language, {\fam \ttfam \tentt \rawbackslash \frenchspacing awk}\hbox {}}{9}
\entry {Loop}{76}
\entry {Loops, breaking out of}{79}
\entry {Lvalue}{68}
\initial {M}
\entry {Manual, using this}{9}
\entry {Metacharacters}{53}
\entry {Mod function, semantics of}{65}
\entry {Modifiers (in format specifiers)}{46}
\entry {Multiple line records}{31}
\entry {Multiple passes over data}{19}
\entry {Multiple statements on one line}{21}
\initial {N}
\entry {Negative-numbered fields}{26}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing next}\hbox {} statement}{81}
\entry {Number of fields, {\fam \ttfam \tentt \rawbackslash \frenchspacing NF}\hbox {}}{25}
\entry {Number of records, {\fam \ttfam \tentt \rawbackslash \frenchspacing FNR}\hbox {}}{24}
\entry {Number of records, {\fam \ttfam \tentt \rawbackslash \frenchspacing NR}\hbox {}}{24}
\entry {Numerical constant}{63}
\entry {Numerical value}{63}
\initial {O}
\entry {One-liners}{49}
\entry {Operator, Ternary}{59}
\entry {Operators, {\fam \ttfam \tentt \rawbackslash \frenchspacing $}\hbox {}}{25}
\entry {Operators, arithmetic}{65}
\entry {Operators, assignment}{68}
\entry {Operators, boolean}{67}
\entry {Operators, increment}{70}
\entry {Operators, regular expression matching}{52}
\entry {Operators, relational}{55, 66}
\entry {Operators, string}{65}
\entry {Operators, string-matching}{52}
\entry {Options, Command Line}{18}
\entry {Output}{39}
\entry {Output field separator, {\fam \ttfam \tentt \rawbackslash \frenchspacing OFS}\hbox {}}{41}
\entry {Output record separator, {\fam \ttfam \tentt \rawbackslash \frenchspacing ORS}\hbox {}}{41}
\entry {Output redirection}{42}
\entry {Output, formatted}{44}
\entry {Output, piping}{42}
\initial {P}
\entry {Passes, Multiple}{19}
\entry {Pattern, case sensitive}{16}
\entry {Pattern, comparison expressions}{55}
\entry {Pattern, default}{12}
\entry {Pattern, definition of}{11}
\entry {Pattern, empty}{51}
\entry {Pattern, regular expressions}{52}
\entry {Patterns, {\fam \ttfam \tentt \rawbackslash \frenchspacing BEGIN}\hbox {}}{57}
\entry {Patterns, boolean}{58}
\entry {Patterns, Conditional}{59}
\entry {Patterns, definition of}{51}
\entry {Patterns, {\fam \ttfam \tentt \rawbackslash \frenchspacing END}\hbox {}}{57}
\entry {patterns, range}{56}
\entry {Patterns, types of}{51}
\entry {Pipes for output}{42}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing print $0}\hbox {}}{11}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing print}\hbox {} statement}{39}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing printf}\hbox {} statement, format of}{45}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing printf}\hbox {}, format-control characters}{45}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing printf}\hbox {}, modifiers}{46}
\entry {Printing, general}{39}
\entry {program file}{16}
\entry {Program, {\fam \ttfam \tentt \rawbackslash \frenchspacing awk}\hbox {}}{9}
\entry {Program, definition of}{11}
\entry {Program, Self contained}{17}
\entry {Programs, documenting}{19}
\initial {R}
\entry {Range pattern}{56}
\entry {Reading files, general}{23}
\entry {Reading files, {\fam \ttfam \tentt \rawbackslash \frenchspacing getline}\hbox {} function}{32}
\entry {Reading files, multiple line records}{31}
\entry {Record separator, {\fam \ttfam \tentt \rawbackslash \frenchspacing RS}\hbox {}}{23}
\entry {Records, multiple line}{31}
\entry {Redirection of output}{42}
\entry {Reference to array}{85}
\entry {Regexp}{52}
\entry {regexp search operators}{52}
\entry {Regular expression matching operators}{52}
\entry {Regular expression, metacharacters}{53}
\entry {Regular expressions as patterns}{52}
\entry {Regular Expressions, Computed}{52}
\entry {Regular Expressions, Dynamic}{52}
\entry {Regular expressions, field separators and}{29}
\entry {Relational operators}{55, 66}
\entry {Removing elements of arrays}{88}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing return}\hbox {} statement}{102}
\entry {Rule, definition of}{11}
\entry {Running gawk programs}{14}
\entry {running long programs}{16}
\initial {S}
\entry {Sample input file}{9}
\entry {Scanning an array}{87}
\entry {Script, definition of}{11}
\entry {Scripts, Executable}{17}
\entry {Scripts, Shell}{17}
\entry {Self contained Programs}{17}
\entry {Separator character, choice of}{29}
\entry {Shell Scripts}{17}
\entry {Single quotes, why they are needed}{15}
\entry {Special variables, user modifiable}{105}
\entry {Standard input}{15, 23}
\entry {Statements}{61, 75}
\entry {String constants}{63}
\entry {String operators}{65}
\entry {String value}{63}
\entry {String-matching operators}{52}
\entry {Subscripts, multi-dimensional in arrays}{89}
\initial {T}
\entry {Ternary Operator}{59}
\initial {U}
\entry {Use of comments}{19}
\entry {User-defined functions}{99}
\entry {User-defined variables}{64}
\entry {Uses of {\fam \ttfam \tentt \rawbackslash \frenchspacing awk}\hbox {}}{1}
\entry {Using this manual}{9}
\initial {V}
\entry {Variables, built-in}{64}
\entry {Variables, user-defined}{64}
\initial {W}
\entry {What is {\fam \ttfam \tentt \rawbackslash \frenchspacing awk}\hbox {}}{1}
\entry {When to use {\fam \ttfam \tentt \rawbackslash \frenchspacing awk}\hbox {}}{21}
\entry {{\fam \ttfam \tentt \rawbackslash \frenchspacing while}\hbox {} statement}{76}
|