DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

(gawk.info) Top

Info Catalog (dir) Top (dir) Top (gawk.info) Preface
 
 General Introduction
 ********************
 
    This file documents `awk', a program that you can use to select
 particular records in a file and perform operations upon them.
 
    This is Edition 1.0.6 of `Effective AWK Programming',
 for the 3.0.6 version of the GNU implementation
 of AWK.
 

Menu

 
* Preface                     What this Info file is about; brief
                                 history and acknowledgements.
* What Is Awk                 What is the `awk' language; using this
                                 Info file.
* Getting Started             A basic introduction to using `awk'. How
                                 to run an `awk' program. Command line
                                 syntax.
* One-liners                  Short, sample `awk' programs.
* Regexp                      All about matching things using regular
                                 expressions.
* Reading Files               How to read files and manipulate fields.
* Printing                    How to print using `awk'.  Describes the
                                 `print' and `printf' statements.
                                 Also describes redirection of output.
* Expressions                 Expressions are the basic building blocks of
                                 statements.
* Patterns and Actions        Overviews of patterns and actions.
* Statements                  The various control statements are described
                                 in detail.
* Built-in Variables          Built-in Variables
* Arrays                      The description and use of arrays. Also
                                 includes array-oriented control statements.
* Built-in                    The built-in functions are summarized here.
* User-defined                User-defined functions are described in
                                 detail.
* Invoking Gawk               How to run `gawk'.
* Library Functions           A Library of `awk' Functions.
* Sample Programs             Many `awk' programs with complete
                                 explanations.
* Language History            The evolution of the `awk' language.
* Gawk Summary                `gawk' Options and Language Summary.
* Installation                Installing `gawk' under various operating
                                 systems.
* Notes                       Something about the implementation of
                                 `gawk'.
* Glossary                    An explanation of some unfamiliar terms.
* Copying                     Your right to copy and distribute `gawk'.
* Index                       Concept and Variable Index.
 
* History                     The history of `gawk' and `awk'.
* Manual History              Brief history of the GNU project and this
                                 Info file.
* Acknowledgements            Acknowledgements.
* This Manual                 Using this Info file. Includes sample
                                 input files that you can use.
* Conventions                 Typographical Conventions.
* Sample Data Files           Sample data files for use in the `awk'
                                 programs illustrated in this Info file.
* Names                       What name to use to find `awk'.
* Running gawk                How to run `gawk' programs; includes
                                 command line syntax.
* One-shot                    Running a short throw-away `awk' program.
* Read Terminal               Using no input files (input from terminal
                                 instead).
* Long                        Putting permanent `awk' programs in
                                 files.
* Executable Scripts          Making self-contained `awk' programs.
* Comments                    Adding documentation to `gawk' programs.
* Very Simple                 A very simple example.
* Two Rules                   A less simple one-line example with two rules.
* More Complex                A more complex example.
* Statements/Lines            Subdividing or combining statements into
                                 lines.
* Other Features              Other Features of `awk'.
* When                        When to use `gawk' and when to use other
                                 things.
* Regexp Usage                How to Use Regular Expressions.
* Escape Sequences            How to write non-printing characters.
* Regexp Operators            Regular Expression Operators.
* GNU Regexp Operators        Operators specific to GNU software.
* Case-sensitivity            How to do case-insensitive matching.
* Leftmost Longest            How much text matches.
* Computed Regexps            Using Dynamic Regexps.
* Records                     Controlling how data is split into records.
* Fields                      An introduction to fields.
* Non-Constant Fields         Non-constant Field Numbers.
* Changing Fields             Changing the Contents of a Field.
* Field Separators            The field separator and how to change it.
* Basic Field Splitting       How fields are split with single characters or
                                 simple strings.
* Regexp Field Splitting      Using regexps as the field separator.
* Single Character Fields     Making each character a separate field.
* Command Line Field Separator Setting `FS' from the command line.
* Field Splitting Summary     Some final points and a summary table.
* Constant Size               Reading constant width data.
* Multiple Line               Reading multi-line records.
* Getline                     Reading files under explicit program control
                                 using the `getline' function.
* Getline Intro               Introduction to the `getline' function.
* Plain Getline               Using `getline' with no arguments.
* Getline/Variable            Using `getline' into a variable.
* Getline/File                Using `getline' from a file.
* Getline/Variable/File       Using `getline' into a variable from a
                                 file.
* Getline/Pipe                Using `getline' from a pipe.
* Getline/Variable/Pipe       Using `getline' into a variable from a
                                 pipe.
* Getline Summary             Summary Of `getline' Variants.
* Print                       The `print' statement.
* Print Examples              Simple examples of `print' statements.
* Output Separators           The output separators and how to change them.
* OFMT                        Controlling Numeric Output With `print'.
* Printf                      The `printf' statement.
* Basic Printf                Syntax of the `printf' statement.
* Control Letters             Format-control letters.
* Format Modifiers            Format-specification modifiers.
* Printf Examples             Several examples.
* Redirection                 How to redirect output to multiple files and
                                 pipes.
* Special Files               File name interpretation in `gawk'.
                                 `gawk' allows access to inherited file
                                 descriptors.
* Close Files And Pipes       Closing Input and Output Files and Pipes.
* Constants                   String, numeric, and regexp constants.
* Scalar Constants            Numeric and string constants.
* Regexp Constants            Regular Expression constants.
* Using Constant Regexps      When and how to use a regexp constant.
* Variables                   Variables give names to values for later use.
* Using Variables             Using variables in your programs.
* Assignment Options          Setting variables on the command line and a
                                 summary of command line syntax. This is an
                                 advanced method of input.
* Conversion                  The conversion of strings to numbers and vice
                                 versa.
* Arithmetic Ops              Arithmetic operations (`+', `-',
                                 etc.)
* Concatenation               Concatenating strings.
* Assignment Ops              Changing the value of a variable or a field.
* Increment Ops               Incrementing the numeric value of a variable.
* Truth Values                What is ``true'' and what is ``false''.
* Typing and Comparison       How variables acquire types, and how this
                                 affects comparison of numbers and strings with
                                 `<', etc.
* Boolean Ops                 Combining comparison expressions using boolean
                                 operators `||' (``or''), `&&'
                                 (``and'') and `!' (``not'').
* Conditional Exp             Conditional expressions select between two
                                 subexpressions under control of a third
                                 subexpression.
* Function Calls              A function call is an expression.
* Precedence                  How various operators nest.
* Pattern Overview            What goes into a pattern.
* Kinds of Patterns           A list of all kinds of patterns.
* Regexp Patterns             Using regexps as patterns.
* Expression Patterns         Any expression can be used as a pattern.
* Ranges                      Pairs of patterns specify record ranges.
* BEGIN/END                   Specifying initialization and cleanup rules.
* Using BEGIN/END             How and why to use BEGIN/END rules.
* I/O And BEGIN/END           I/O issues in BEGIN/END rules.
* Empty                       The empty pattern, which matches every record.
* Action Overview             What goes into an action.
* If Statement                Conditionally execute some `awk'
                                 statements.
* While Statement             Loop until some condition is satisfied.
* Do Statement                Do specified action while looping until some
                                 condition is satisfied.
* For Statement               Another looping statement, that provides
                                 initialization and increment clauses.
* Break Statement             Immediately exit the innermost enclosing loop.
* Continue Statement          Skip to the end of the innermost enclosing
                                 loop.
* Next Statement              Stop processing the current input record.
* Nextfile Statement          Stop processing the current file.
* Exit Statement              Stop execution of `awk'.
* User-modified               Built-in variables that you change to control
                                 `awk'.
* Auto-set                    Built-in variables where `awk' gives you
                                 information.
* ARGC and ARGV               Ways to use `ARGC' and `ARGV'.
* Array Intro                 Introduction to Arrays
* Reference to Elements       How to examine one element of an array.
* Assigning Elements          How to change an element of an array.
* Array Example               Basic Example of an Array
* Scanning an Array           A variation of the `for' statement. It
                                 loops through the indices of an array's
                                 existing elements.
* Delete                      The `delete' statement removes an element
                                 from an array.
* Numeric Array Subscripts    How to use numbers as subscripts in
                                 `awk'.
* Uninitialized Subscripts    Using Uninitialized variables as subscripts.
* Multi-dimensional           Emulating multi-dimensional arrays in
                                 `awk'.
* Multi-scanning              Scanning multi-dimensional arrays.
* Calling Built-in            How to call built-in functions.
* Numeric Functions           Functions that work with numbers, including
                                 `int', `sin' and `rand'.
* String Functions            Functions for string manipulation, such as
                                 `split', `match', and
                                 `sprintf'.
* I/O Functions               Functions for files and shell commands.
* Time Functions              Functions for dealing with time stamps.
* Definition Syntax           How to write definitions and what they mean.
* Function Example            An example function definition and what it
                                 does.
* Function Caveats            Things to watch out for.
* Return Statement            Specifying the value a function returns.
* Options                     Command line options and their meanings.
* Other Arguments             Input file names and variable assignments.
* AWKPATH Variable            Searching directories for `awk' programs.
* Obsolete                    Obsolete Options and/or features.
* Undocumented                Undocumented Options and Features.
* Known Bugs                  Known Bugs in `gawk'.
* Portability Notes           What to do if you don't have `gawk'.
* Nextfile Function           Two implementations of a `nextfile'
                                 function.
* Assert Function             A function for assertions in `awk'
                                 programs.
* Round Function              A function for rounding if `sprintf' does
                                 not do it correctly.
* Ordinal Functions           Functions for using characters as numbers and
                                 vice versa.
* Join Function               A function to join an array into a string.
* Mktime Function             A function to turn a date into a timestamp.
* Gettimeofday Function       A function to get formatted times.
* Filetrans Function          A function for handling data file transitions.
* Getopt Function             A function for processing command line
                                 arguments.
* Passwd Functions            Functions for getting user information.
* Group Functions             Functions for getting group information.
* Library Names               How to best name private global variables in
                                 library functions.
* Clones                      Clones of common utilities.
* Cut Program                 The `cut' utility.
* Egrep Program               The `egrep' utility.
* Id Program                  The `id' utility.
* Split Program               The `split' utility.
* Tee Program                 The `tee' utility.
* Uniq Program                The `uniq' utility.
* Wc Program                  The `wc' utility.
* Miscellaneous Programs      Some interesting `awk' programs.
* Dupword Program             Finding duplicated words in a document.
* Alarm Program               An alarm clock.
* Translate Program           A program similar to the `tr' utility.
* Labels Program              Printing mailing labels.
* Word Sorting                A program to produce a word usage count.
* History Sorting             Eliminating duplicate entries from a history
                                 file.
* Extract Program             Pulling out programs from Texinfo source
                                 files.
* Simple Sed                  A Simple Stream Editor.
* Igawk Program               A wrapper for `awk' that includes files.
* V7/SVR3.1                   The major changes between V7 and System V
                                 Release 3.1.
* SVR4                        Minor changes between System V Releases 3.1
                                 and 4.
* POSIX                       New features from the POSIX standard.
* BTL                         New features from the Bell Laboratories
                                 version of `awk'.
* POSIX/GNU                   The extensions in `gawk' not in POSIX
                                 `awk'.
* Command Line Summary        Recapitulation of the command line.
* Language Summary            A terse review of the language.
* Variables/Fields            Variables, fields, and arrays.
* Fields Summary              Input field splitting.
* Built-in Summary            `awk''s built-in variables.
* Arrays Summary              Using arrays.
* Data Type Summary           Values in `awk' are numbers or strings.
* Rules Summary               Patterns and Actions, and their component
                                 parts.
* Pattern Summary             Quick overview of patterns.
* Regexp Summary              Quick overview of regular expressions.
* Actions Summary             Quick overview of actions.
* Operator Summary            `awk' operators.
* Control Flow Summary        The control statements.
* I/O Summary                 The I/O statements.
* Printf Summary              A summary of `printf'.
* Special File Summary        Special file names interpreted internally.
* Built-in Functions Summary  Built-in numeric and string functions.
* Time Functions Summary      Built-in time functions.
* String Constants Summary    Escape sequences in strings.
* Functions Summary           Defining and calling functions.
* Historical Features         Some undocumented but supported ``features''.
* Gawk Distribution           What is in the `gawk' distribution.
* Getting                     How to get the distribution.
* Extracting                  How to extract the distribution.
* Distribution contents       What is in the distribution.
* Unix Installation           Installing `gawk' under various versions
                                 of Unix.
* Quick Installation          Compiling `gawk' under Unix.
* Configuration Philosophy    How it's all supposed to work.
* VMS Installation            Installing `gawk' on VMS.
* VMS Compilation             How to compile `gawk' under VMS.
* VMS Installation Details    How to install `gawk' under VMS.
* VMS Running                 How to run `gawk' under VMS.
* VMS POSIX                   Alternate instructions for VMS POSIX.
* PC Installation             Installing and Compiling `gawk' on MS-DOS
                                 and OS/2
* Atari Installation          Installing `gawk' on the Atari ST.
* Atari Compiling             Compiling `gawk' on Atari
* Atari Using                 Running `gawk' on Atari
* Amiga Installation          Installing `gawk' on an Amiga.
* Bugs                        Reporting Problems and Bugs.
* Other Versions              Other freely available `awk'
                                 implementations.
* Compatibility Mode          How to disable certain `gawk' extensions.
* Additions                   Making Additions To `gawk'.
* Adding Code                 Adding code to the main body of `gawk'.
* New Ports                   Porting `gawk' to a new operating system.
* Future Extensions           New features that may be implemented one day.
* Improvements                Suggestions for improvements by volunteers.
 
                   To Miriam, for making me complete.
 
 
                   To Chana, for the joy you bring us.
 
 
                 To Rivka, for the exponential increase.
 
 
                   To Nachum, for the added dimension.
 
 
                    To Malka, for the new beginning.
 
Info Catalog (dir) Top (dir) Top (gawk.info) Preface
automatically generated byinfo2html