PR(1) User Commands PR(1)

NAME


pr - print files

SYNOPSIS


/usr/bin/pr [+ page] [-column] [-adFmrt] [-e [char] [gap]]
[-h header] [-i [char] [gap]] [-l lines]
[-n [char] [width]] [-o offset] [-s [char]]
[-w width] [-fp] [file]...


/usr/xpg4/bin/pr [+ page] [-column | -c column] [-adFmrt]
[-e [char] [gap]] [-h header] [-i [char] [gap]]
[-l lines] [-n [char] [width]] [-o offset]
[-s [char]] [-w width] [-fp] [file]...


DESCRIPTION


The pr utility is a printing and pagination filter. If multiple input
files are specified, each is read, formatted, and written to standard
output. By default, the input is separated into 66-line pages, each
with:

o a 5-line header that includes the page number, date, time and
the path name of the file

o a 5-line trailer consisting of blank lines


If standard output is associated with a terminal, diagnostic messages
will be deferred until the pr utility has completed processing.


When options specifying multi-column output are specified, output text
columns will be of equal width; input lines that do not fit into a text
column will be truncated. By default, text columns are separated with at
least one blank character.

OPTIONS


The following options are supported. In the following option
descriptions, column, lines, offset, page, and width are positive decimal
integers; gap is a non-negative decimal integer. Some of the option-
arguments are optional, and some of the option-arguments cannot be
specified as separate arguments from the preceding option letter. In
particular, 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.


The following options are supported for both /usr/bin/pr and
/usr/xpg4/bin/pr:

+page
Begins output at page number page of the
formatted input.


-column
Produces multi-column output that is
arranged in column columns (default is 1)
and is written down each column in the order
in which the text is received from the input
file. This option should not be used with
-m. The -e and -i options will be assumed
for multiple text-column output. Whether or
not text columns are produced with identical
vertical lengths is unspecified, but a text
column will never exceed the length of the
page (see the -l option). When used with -t,
use the minimum number of lines to write the
output.


-a
Modifies the effect of the -column option so
that the columns are filled across the page
in a round-robin order (for example, 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, and so
forth).


-d
Produces output that is double-spaced;
append an extra NEWLINE character following
every NEWLINE character found in the input.


-e[char][gap]
Expands each input TAB character to the next
greater column position specified by the
formula n *gap+1, where n is an integer >0.
If gap is 0 or is omitted, it defaults to 8.
All TAB characters in the input will be
expanded into the appropriate number of
SPACE characters. If any non-digit
character, char, is specified, it will be
used as the input tab character.


-f
Uses a FORMFEED character for new pages,
instead of the default behavior that uses a
sequence of NEWLINE characters. Pauses
before beginning the first page if the
standard output is associated with a
terminal.


-h header
Uses the string header to replace the
contents of the file operand in the page
header.


-l lines
Overrides 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), pr will suppress
both the header and trailer, as if the -t
option were in effect.


-m
Merges files. Standard output will be
formatted so pr writes one line from each
file specified by file, side by side into
text columns of equal fixed widths, in terms
of the number of column positions.
Implementations support merging of at least
nine files.


-n[char][width]
Provides width-digit line numbering (default
for width is 5). The number will occupy the
first width column positions of each text
column of default output or each line of -m
output. If char (any non-digit character) is
given, it will be appended to the line
number to separate it from whatever follows
(default for char is a TAB character).


-o offset
Each line of output will be preceded by
offset <space>s. If the -o option is not
specified, the default offset is 0. The
space taken will be in addition to the
output line width (see -w option below).


-p
Pauses before beginning each page if the
standard output is directed to a terminal
(pr will write an ALERT character to
standard error and wait for a carriage-
return character to be read on /dev/tty).


-r
Writes no diagnostic reports on failure to
open files.


-s [char]
Separates text columns by the single
character char instead of by the appropriate
number of SPACE characters (default for char
is the TAB character).


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


-w width
Sets 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.

For single column output, input lines will
not be truncated.


/usr/bin/pr
The following options are supported for /usr/bin/pr only:

-F
Folds the lines of the input file. When used
in multi-column mode (with the -a or -m
options), lines will be folded to fit the
current column's width. Otherwise, they will
be folded to fit the current line width (80
columns).


-i[char][gap]
In output, replaces SPACE characters with TAB
characters wherever one or more adjacent SPACE
characters reach column positions gap+1,
2*gap+1, 3*gap+1, and so forth. If gap is 0 or
is omitted, default TAB settings at every
eighth column position are assumed. If any
non-digit character, char, is specified, it
will be used as the output TAB character.


/usr/xpg4/bin/pr
The following options are supported for /usr/xpg4/bin/pr only:

-F
Uses a FORMFEED character for new pages,
instead of the default behavior that uses a
sequence of NEWLINE characters.


-i[char][gap]
In output, replaces multiple SPACE characters
with TAB characters wherever two or more
adjacent SPACE characters reach column
positions gap+1, 2*gap+1, 3*gap+1, and so
forth. If gap is 0 or is omitted, default TAB
settings at every eighth column position are
assumed. If any non-digit character, char, is
specified, it will be used as the output TAB
character.


OPERANDS


The following operand is supported:

file
A path name of a file to be written. If no file operands are
specified, or if a file operand is -, the standard input will be
used.


EXAMPLES


Example 1: Printing a numbered list of all files in the current directory



example% ls -a | pr -n -h "Files in $(pwd)."


Example 2: Printing files in columns




This example prints file1 and file2 as a double-spaced, three-column
listing headed by file list:


example% pr -3d -h "file list" file1 file2


Example 3: Writing files with expanded column tabs




The following example writes file1 on file2, expanding tabs to columns
10, 19, 28, ...


example% pr -e9 -t <file1 >file2


ENVIRONMENT VARIABLES


See environ(7) for descriptions of the following environment variables
that affect the execution of pr: LANG, LC_ALL, LC_CTYPE, LC_MESSAGES,
LC_TIME, TZ, and NLSPATH.

EXIT STATUS


The following exit values are returned:

0
Successful completion.


>0
An error occurred.


ATTRIBUTES


See attributes(7) for descriptions of the following attributes:

/usr/bin/pr


+---------------+-----------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+-----------------+
|CSI | Enabled |
+---------------+-----------------+

/usr/xpg4/bin/pr


+--------------------+-------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-------------------+
|CSI | Enabled |
+--------------------+-------------------+
|Interface Stability | Committed |
+--------------------+-------------------+
|Standard | See standards(7). |
+--------------------+-------------------+

SEE ALSO


expand(1), lp(1), attributes(7), environ(7), standards(7)

March 18, 1997 PR(1)