[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

4. Reading Input Files

In the typical awk program, all input is read either from the standard input (by default, this is the keyboard but often it is a pipe from another command), or from files whose names you specify on the awk command line. If you specify input files, awk reads them in order, processing all the data from one before going on to the next. The name of the current input file can be found in the built-in variable FILENAME (see section 7.5 Built-in Variables).

The input is read in units called records, and is processed by the rules of your program one record at a time. By default, each record is one line. Each record is automatically split into chunks called fields. This makes it more convenient for programs to work on the parts of a record.

On rare occasions, you may need to use the getline command. The getline command is valuable, both because it can do explicit input from any number of files, and because the files used with it do not have to be named on the awk command line (see section Explicit Input with getline).

4.1 How Input Is Split into Records  Controlling how data is split into records.
4.2 Examining Fields  An introduction to fields.
4.3 Non-Constant Field Numbers  Non-constant Field Numbers.
4.4 Changing the Contents of a Field  
4.5 Specifying How Fields Are Separated  The field separator and how to change it.
4.6 Reading Fixed-Width Data  Reading constant width data.
4.7 Multiple-Line Records  Reading multi-line records.
4.8 Explicit Input with getline  Reading files under explicit program control using the getline function.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

This document was generated on May 2, 2002 using texi2html