Printing and pagination filter for text files.
When multiple input files are specified, each is read, formatted, and written to standard output.

      pr [options] [file ...]

     Begin output at page number page of the formatted input.

     Produce output that is columns wide (default is 1) that is written
     vertically down each column in the order in which the text is
     received from the input file.  The options -e and -i are assumed.
     This option should not be used with -m.  When used with -t, the
     minimum number of lines is used to display the output.

     -a     Modify the effect of the -column option so that the columns are
     filled across the page in a round-robin order (e.g., when column is
     2, the first input line heads column 1, the second heads column 2,
     the third is the second line in column 1, etc.).  This option
     requires the use of the -column option.

     -d     Produce output that is double spaced. An extra <newline> character
     is output following every <newline> found in the input.

     -e [char][gap]

     Expand each input <tab> to the next greater column position speci-
     fied by the formula n*gap+1, where n is an integer > 0.  If gap is
     zero or is omitted the default is 8.   All <tab> characters in the
     input are expanded into the appropriate number of <space>s.  If any
     nondigit character, char, is specified, it is used as the input tab

     -F     Use a <form-feed> character for new pages, instead of the default
     behavior that uses a sequence of <newline> characters.

     -h header

     Use the string header to replace the file name in the header line.

     -i [char][gap]
     In output, replace multiple <space>s with <tab>s whenever two or
     more adjacent <space>s reach column positions gap+1, 2*gap+1, etc.
     If gap is zero or omitted, default <tab> settings at every eighth
     column position is used.  If any nondigit character, char, is spec-
     ified, it is used as the output <tab> character.

     -l lines

     Override the 66 line default and reset the page length to lines. If
     lines is not greater than the sum of both the header and trailer
     depths (in lines), the pr utility suppresses output of both the
     header and trailer, as if the -t option were in effect.

     -m     Merge the contents of multiple files.  One line from each file
     specified by a file operand is written side by side into text
     columns of equal fixed widths, in terms of the number of column
     positions.  The number of text columns depends on the number of
     file operands successfully opened.  The maximum number of files
     merged depends on page width and the per process open file limit.
     The options -e and -i are assumed.

     -n [char][width]

     Provide width digit line numbering.  The default for width, if not
     specified, is 5.  The number occupies the first width column posi-
     tions of each text column or each line of -m output.   If char (any
     nondigit character) is given, it is appended to the line number to
     separate it from whatever follows. The default for char is a <tab>.
     Line numbers longer than width columns are truncated.

     -o offset

     Each line of output is preceded by offset <spaces>s.   If the -o
     option is not specified, the default is zero.  The space taken is
     in addition to the output line width.

     -r     Write no diagnostic reports on failure to open a file.

     -s char

     Separate text columns by the single character char instead of by
     the appropriate number of <space>s (default for char is the <tab>

     -t     Print neither the five-line identifying header nor the five-line
     trailer usually supplied for each page.  Quit printing after the
     last line of each file without spacing to the end of the page.

     -w width

     Set the width of the line to width column positions for multiple
     text-column output only.  If the -w option is not specified and the
     -s option is not specified, the default width is 72.   If the -w
     option is not specified and the -s option is specified, the default
     width is 512.

     file  A pathname of a file to be printed.
           If no file operands are specified, or if a file operand is `-',
           the standard input is used.

In all the option descriptions above, column, lines, offset, page, and width are positive decimal integers and gap is a nonnegative decimal integer.

The -s option does not allow the option letter to be separated from its argument, and the options -e, -i, and -n require that both arguments, if present, not be separated from the option letter.

By default, the input is separated into 66-line pages, each with

If standard output is associated with a terminal, diagnostic messages are suppressed until the pr utility has completed processing.

When multiple column output is specified, text columns are of equal width. By default text columns are separated by at least one <blank>. Input lines that do not fit into a text column are truncated. Lines are not truncated under single column output.

“We photographers deal in things which are continually vanishing, and when they have vanished there is no contrivance on earth can make them come back again. We cannot develop and print a memory” ~ Henri Cartier-Bresson

Related macOS commands

cat - Display the contents of a file.
more - Display output one screen at a time.
say - Convert text to audible speech.
textutil - Manipulate text files in various formats.

Copyright © 1999-2024
Some rights reserved