(gawk.info.gz) Output Separators

Info Catalog (gawk.info.gz) Print Examples (gawk.info.gz) Printing (gawk.info.gz) OFMT
 
 5.3 Output Separators
 =====================
 
 As mentioned previously, a `print' statement contains a list of items
 separated by commas.  In the output, the items are normally separated
 by single spaces.  However, this doesn't need to be the case; a single
 space is simply the default.  Any string of characters may be used as
 the "output field separator" by setting the built-in variable `OFS'.
 The initial value of this variable is the string `" "'--that is, a
 single space.
 
    The output from an entire `print' statement is called an "output
 record".  Each `print' statement outputs one output record, and then
 outputs a string called the "output record separator" (or `ORS').  The
 initial value of `ORS' is the string `"\n"'; i.e., a newline character.
 Thus, each `print' statement normally makes a separate line.
 
    In order to change how output fields and records are separated,
 assign new values to the variables `OFS' and `ORS'.  The usual place to
 do this is in the `BEGIN' rule ( BEGIN/END), so that it happens
 before any input is processed.  It can also be done with assignments on
 the command line, before the names of the input files, or using the
 `-v' command-line option ( Options).  The following example
 prints the first and second fields of each input record, separated by a
 semicolon, with a blank line added after each newline:
 
      $ awk 'BEGIN { OFS = ";"; ORS = "\n\n" }
      >            { print $1, $2 }' BBS-list
      -| aardvark;555-5553
      -|
      -| alpo-net;555-3412
      -|
      -| barfly;555-7685
      ...
 
    If the value of `ORS' does not contain a newline, the program's
 output runs together on a single line.
 
Info Catalog (gawk.info.gz) Print Examples (gawk.info.gz) Printing (gawk.info.gz) OFMT
automatically generated by info2html