pr(1)                                                                   pr(1)



NAME

  pr - Writes a file to standard output

SYNOPSIS

  pr [-adfFmprt] [-e] [character] [number] [-h header] [-i] [character] [gap]
  [-l lines] [-n] [character] [width] | [-x] [character] [number] [-o offset]
  [-s] [character] [-w width] [-column] [+page] [file...]

  The pr command writes file to standard output.  If you do not specify file
  or if file is -, pr reads standard input.

STANDARDS

  Interfaces documented on this reference page conform to industry standards
  as follows:

  pr:  XCU5.0

  Refer to the standards(5) reference page for more information about indus-
  try standards and associated tags.

OPTIONS

  -a  Displays multicolumn output across the page.  (This option is meaning-
      ful only in combination with the -column option.  It modifies -column
      so that columns are filled across the page in a round robin order.)

  -d  Doublespaces the output.

  -e[character][number]
      Expands tabs to byte positions number+1, 2*number+1, 3*number+1, and so
      on.  The default value of number is 8.  Tab characters in the input
      expand to the appropriate number of spaces to line up with the next tab
      setting.  If you specify character (any character other than a digit)
      that character becomes the input tab character.  The default value of
      character is the ASCII tab character.

  -f  Uses a formfeed character to advance to a new page. (Otherwise, pr
      issues a sequence of newline characters.)  Pauses before beginning the
      first page if the standard output is a terminal.

  -F  Uses a formfeed character to advance to a new page. (Otherwise, pr
      issues a sequence of newline characters.)  Does not pause before begin-
      ning the first page if the standard output is a terminal.

  -h header
      Displays header instead of the file name in the page header.

  -i[character][gap]
      Replaces multiple space characters with tab characters wherever two or
      more space characters reach positions gap+1, 2*gap+1, 3*gap+1, and so
      on.  The default value of gap is 8.  If you specify character (any
      character other than a digit), that character becomes the output tab
      character.  (The default value of character is the ASCII tab charac-
      ter.)

  -l lines
      Sets the length of a page to lines lines (the default is 66).  If lines
      is not greater than the sum of the header and trailer, pr suppresses
      both header and trailer, as if -t were in effect.

  -m  Combines and writes all files at the same time, with each file in a
      separate column.  (This overrides the -column and -a options).

  -n[character][width]
      Provides width-digit line numbering (the default value of width is 5).
      The number occupies the first width positions of each column of normal
      output (or each line of -m output).  If you specify character (any
      character, other than a digit), that character is added to the line
      number to separate it from whatever follows.  (The default value of
      character is an ASCII tab character.)

  -o offset
      Indents each line of output by offset byte positions (the default is
      0).  This is in addition to output width (see -w).

  -p  Pauses before beginning each page if the output is directed to a termi-
      nal.  (pr sounds the bell at the terminal and waits for you to press
      .)

  -r  Does not display diagnostic messages if the system cannot open files.

  -s[character]
      Separates columns by the single character instead of by the appropriate
      number of spaces (the default for character is an ASCII tab character).

  -t  Does not display the 5-line identifying header and the 5-line footer.
      Stops after the last line of each file without spacing to the end of
      the page.

  -x[character][number]
      [Tru64 UNIX]  Same as -n.

  -w width
      Sets the width of a line to width byte positions.  If neither -w or -s
      are specified, the default is 72.  If only -s is specified, the default
      is 512.  Single column output is not truncated.

  -column
      Produces the specified number of columns (the default value is 1).  The
      -e and -i options are assumed for multicolumn output.  A text column
      never exceeds the width of the page (see -l).

  +page
      Begins the display at the specified page number (the default value is
      1).


                                       Note

         When used with arguments, the -e, -i, -n, -s, and -x options do not
         permit white space between the option and its associated argument,
         or between multiple arguments.





OPERANDS

  file
      The path name of a file to written.  If no file is specified, or -
      (hyphen) is specified, standard input is used.

DESCRIPTION

  A heading that contains the page number, date, time, and the name of the
  file separates the output into pages.

  Unless specified, columns are of equal width and separated by at least one
  space.  Lines that are too long for the page width are shortened.  If the
  standard output is a terminal, pr does not display any error messages until
  it has ended.  By default, the input is separated into 66-line pages,
  including the 5-line header and 5-line footer.

  If standard output is a terminal, diagnostic (error) messages produced dur-
  ing the operation of pr will be deferred and printed after pr has completed
  processing.

EXIT STATUS

  The following exit values are returned:

  0   All files have been successfully written.

  >0  An error occurred.

EXAMPLES

   1.  To print a file with headings and page numbers on the printer, enter:
            pr  prog.c | lpr

       This inserts a page break in prog.c, starts each page with a heading,
       and sends the output to the print command.  The heading consists of
       the date the file was last modified, the file name, and the page
       number.

   2.  To specify a title, enter:
            pr  -h  "MAIN  PROGRAM"  prog.c  |  lpr

       This prints prog.c with the title MAIN PROGRAM in place of the file
       name.  The modification date and page number are still printed.

   3.  To print a file in multiple columns, enter:
            pr  -3  word.lst  |  lpr

       This prints the file word.lst in three vertical columns.

   4.  To print several files side-by-side on the paper, enter:
            pr -m -h "Members, Visitors" member.lst visitor.lst | lpr

       This prints the files member.lst and visitor.lst side-by-side with the
       title Members, Visitors.

   5.  To modify a file for later use, enter:
            pr  -t  -e  prog.c  > prog.notab.c

       This replaces tab characters in prog.c with spaces and puts the result
       in prog.notab.c.  Tab positions are at byte positions 9, 17, 25, 33,
       and so on.  The -e tells pr to replace the tab characters; the -t
       suppresses the page headings.



ENVIRONMENT VARIABLES

  The following environment variables affect the execution of pr:

  LANG
      Provides a default value for the internationalization variables that
      are unset or null. If LANG is unset or null, the corresponding value
      from the default locale is used. If any of the internationalization
      variables contain an invalid setting, the utility behaves as if none of
      the variables had been defined.

  LC_ALL
      If set to a non-empty string value, overrides the values of all the
      other internationalization variables.

  LC_CTYPE
      Determines the locale for the interpretation of sequences of bytes of
      text data as characters (for example, single-byte as opposed to multi-
      byte characters in arguments).

  LC_MESSAGES
      Determines the locale for the format and contents of diagnostic mes-
      sages written to standard error.

  LC_TIME
      Determines the format of the date and time used in writing header
      lines.

  NLSPATH
      Determines the location of message catalogues for the processing of
      LC_MESSAGES.

FILES

  /dev/tty
      Your terminal, used when the -p option is specified.

SEE ALSO

  Commands:  cat(1), expand(1), mesg(1)

  Standards:  standards(5)