1
0
mirror of https://git.savannah.gnu.org/git/coreutils.git synced 2026-10-31 18:44:38 +03:00

Big pr update from Roland Huebner.

This commit is contained in:
Jim Meyering
1999-03-07 13:56:47 +00:00
parent 68bb940729
commit 4433aaa043

View File

@@ -103,6 +103,9 @@ by the Foundation.
@end titlepage
@c If your makeinfo doesn't grok this @ifnottex directive, then either
@c get a newer version of makeinfo or do s/ifnottex/ifinfo/ here and on
@c the matching @end directive below.
@ifnottex
@node Top
@top GNU text utilities
@@ -961,23 +964,43 @@ optionally outputting in multicolumn format; optionally merges all
pr [@var{option}]@dots{} [@var{file}]@dots{}
@end example
By default, a 5-line header is printed: two blank lines; a line with the
date, the file name, and the page count; and two more blank lines. A
footer of five blank lines is also printed. With the @samp{-f} option, a
3-line header is printed: the leading two blank lines are omitted; no
footer used. The default @var{page_length} in both cases is 66 lines.
The text line of the header takes up the full @var{page_width} in the
form @samp{yy-mm-dd HH:MM string Page nnnn}. String is a centered
string.
By default, a 5-line header is printed at each page: two blank lines;
a line with the date, the filename, and the page count; and two more
blank lines. A footer of five blank lines is also printed. With the @samp{-F}
option, a 3-line header is printed: the leading two blank lines are
omitted; no footer is used. The default @var{page_length} in both cases is 66
lines. The default number of text lines changes from 56 (without @samp{-F})
to 63 (with @samp{-F}). The text line of the header takes up the full
@var{page_width} in the form @samp{yyyy-mm-dd HH:MM string Page nnnn}.
String is a centered header string.
Form feeds in the input cause page breaks in the output. Multiple form
Form feeds in the input cause page breaks in the output. Multiple form
feeds produce empty pages.
Columns have equal width, separated by an optional string (default
space). Lines will always be truncated to line width (default 72),
unless you use the @samp{-j} option. For single column output no line
truncation occurs by default. Use @samp{-w} option to truncate lines
in that case.
Columns are of equal width, separated by an optional string (default
is @samp{space}). For multicolumn output, lines will always be truncated to
@var{page_width} (default 72), unless you use the @samp{-J} option. For single
column output no line truncation occurs by default. Use @samp{-W} option to
truncate lines in that case.
Including version 1.22i:
Some small @var{letter options} (@samp{-s}, @samp{-w}) has been redefined
with the object of a better @var{posix} compliance. The output of some
further cases has been adapted to other @var{unix}es. A violation of
downward compatibility has to be accepted.
Some @var{new capital letter} options (@samp{-J}, @samp{-S}, @samp{-W})
has been introduced to turn off unexpected interferences of small letter
options. The @samp{-N} option and the second argument @var{last_page}
of @samp{+FIRST_PAGE} offer more flexibility. The detailed handling of
form feeds set in the input files requires @samp{-T} option.
Capital letter options dominate small letter ones.
Some of the option-arguments (compare @samp{-s}, @samp{-S}, @samp{-e},
@samp{-i}, @samp{-n}) cannot be specified as separate arguments from the
preceding option letter (already stated in the @var{posix} specification).
The program accepts the following options. Also see @ref{Common options}.
@@ -987,32 +1010,39 @@ The program accepts the following options. Also see @ref{Common options}.
@itemx --pages=@var{first_page}[:@var{last_page}]
@opindex +@var{first_page}[:@var{last_page}]
@opindex --pages
Begin printing with page @var{first_page} and stop with
@var{last_page}. Missing @samp{:@var{last_page}} implies end of file. While
estimating the number of skipped pages each form feed in the input file
results in a new page. Page counting with and without
@samp{+@var{first_page}} is identical. By default, it starts with the
first page of input file (not first page printed). Page numbering may be
altered by @samp{-N} option.
Begin printing with page @var{first_page} and stop with @var{last_page}.
Missing @samp{:@var{last_page}} implies end of file. While estimating
the number of skipped pages each form feed in the input file results
in a new page. Page counting with and without @samp{+@var{first_page}}
is identical. By default, counting starts with the first page of input
file (not first page printed). Line numbering may be altered by @samp{-N}
option.
@item -@var{column}
@itemx --columns=@var{column}
@opindex -@var{column}
@opindex --columns
@cindex down columns
With each single @var{file}, produce @var{column}-column output and
print columns down. The column width is automatically estimated from
@var{page_width}. This option might well cause some columns to be
truncated. The number of lines in the columns on each page will be
balanced. @samp{-@var{column}} may not be used with @samp{-m} option.
With each single @var{file}, produce @var{column} columns of output
(default is 1) and print columns down, unless @samp{-a} is used. The
column width is automatically decreased as @var{column} increases; unless
you use the @samp{-W/-w} option to increase @var{page_width} as well.
This option might well cause some lines to be truncated. The number of
lines in the columns on each page are balanced. The options @samp{-e}
and @samp{-i} are on for multiple text-column output. Together with
@samp{-J} option column alignment and line truncation is turned off.
Lines of full length are joined in a free field format and @samp{-S}
option may set field separators. @samp{-@var{column}} may not be used
with @samp{-m} option.
@item -a
@itemx --across
@opindex -a
@opindex --across
@cindex across columns
With each single @var{file}, print columns across rather than down.
@var{column} must be greater than one.
With each single @var{file}, print columns across rather than down. The
@samp{-@var{column}} option must be given with @var{column} greater than one.
If a line is too long to fit in a column, it is truncated.
@item -c
@itemx --show-control-chars
@@ -1034,7 +1064,7 @@ Double space the output.
@opindex -e
@opindex --expand-tabs
@cindex input tabs
Expand tabs to spaces on input. Optional argument @var{in-tabchar} is
Expand @var{tab}s to spaces on input. Optional argument @var{in-tabchar} is
the input tab character (default is @key{TAB}). Second optional
argument @var{in-tabwidth} is the input tab character's width (default
is 8).
@@ -1045,93 +1075,110 @@ is 8).
@opindex -F
@opindex -f
@opindex --form-feed
Use a form feed instead of newlines to separate output pages. Default
page length of 66 lines is not altered. But the number of lines of text
per page changes from 56 to 63 lines.
Use a form feed instead of newlines to separate output pages. The default
page length of 66 lines is not altered. But the number of lines of text
per page changes from default 56 to 63 lines.
@item -h @var{HEADER}
@itemx --header=@var{HEADER}
@opindex -h
@opindex --header
Replace the file name in the header with the centered string
@var{header}. Left-hand-side truncation (marked by a @samp{*}) may occur
if the total header line @samp{yy-mm-dd HH:MM HEADER Page nnnn}
becomes larger than @var{page_width}. @samp{-h ""} prints a blank line
header. Don't use @samp{-h""}. A space between the -h option and the
argument is always peremptory.
Replace the filename in the header with the centered string @var{header}.
Left-hand-side truncation (marked by a @samp{*}) may occur if the total
header line @samp{yyyy-mm-dd HH:MM HEADER Page nnnn} becomes larger than
@var{page_width}. @samp{-h ""} prints a blank line header. Don't use
@samp{-h""}.
A space between the @samp{-h} option and the argument is always
indispensable.
@item -i[@var{out-tabchar}[@var{out-tabwidth}]]
@itemx --output-tabs[=@var{out-tabchar}[@var{out-tabwidth}]]
@opindex -i
@opindex --output-tabs
@cindex output tabs
Replace spaces with tabs on output. Optional argument @var{out-tabchar}
Replace spaces with @var{tab}s on output. Optional argument @var{out-tabchar}
is the output tab character (default is @key{TAB}). Second optional
argument @var{out-tabwidth} is the output tab character's width (default
is 8).
@item -j
@item -J
@itemx --join-lines
@opindex -j
@opindex -J
@opindex --join-lines
Merge lines of full length. Used together with the column options
@samp{-@var{column}}, @samp{-a -@var{column}} or @samp{-m}. Turns off
@samp{-w} line truncation; no column alignment used; may be used with
@samp{-s[@var{separator}]}.
Merge lines of full length. Used together with the column options
@samp{-@var{column}}, @samp{-a -@var{column}} or @samp{-m}. Turns off
@samp{-W/-w} line truncation;
no column alignment used; may be used with @samp{-S[@var{string}]}.
@samp{-J} has been introduced (together with @samp{-W} and @samp{-S})
to disentangle the old (@var{posix} compliant) options @samp{-w} and
@samp{-s} along with the three column options.
@item -l @var{page_length}
@itemx --length=@var{page_length}
@opindex -l
@opindex --length
Set the page length to @var{page_length} (default 66) lines. If
@var{page_length} is less than or equal 10 (and <= 3 with @samp{-f}),
the headers and footers are omitted, and all form feeds set in input
files are eliminated, as if the @samp{-T} option had been given.
Set the page length to @var{page_length} (default 66) lines, including
the lines of the header [and the footer]. If @var{page_length} is less
than or equal 10 (and <= 3 with @samp{-F}), the header and footer are
omitted, and all form feeds set in input files are eliminated, as if
the @samp{-T} option had been given.
@item -m
@itemx --merge
@opindex -m
@opindex --merge
Merge and print all @var{file}s in parallel, one in each column. If a
line is too long to fit in a column, it is truncated (but see
@samp{-j}). @samp{-s[@var{separator}]} may be used. Empty pages in some
@var{file}s (form feeds set) produce empty columns, still marked by
@var{separator}. Completely empty common pages show no separators or
line numbers. The default header becomes
@samp{yy-mm-dd HH:MM <blanks> Page nnnn}; may be used with
@samp{-h @var{header}} to fill up the middle part.
Merge and print all @var{file}s in parallel, one in each column. If a
line is too long to fit in a column, it is truncated, unless @samp{-J}
option is used. @samp{-S[@var{string}]} may be used. Empty pages in
some @var{file}s (form feeds set) produce empty columns, still marked
by @var{string}. The result is a continuous line numbering and column
marking throughout the whole merged file. Completely empty merged pages
show no separators or line numbers. The default header becomes
@samp{yyyy-mm-dd HH:MM <blanks> Page nnnn}; may be used with
@samp{-h @var{header}} to fill up the middle blank part.
@item -n[@var{number-separator}[@var{digits}]]
@itemx --number-lines[=@var{number-separator}[@var{digits}]]
@opindex -n
@opindex --number-lines
Precede each column with a line number; with parallel @var{file}s
(@samp{-m}), precede only each line with a line number. Optional argument
@var{number-separator} is the character to print after each number
(default is @key{TAB}). Optional argument @var{digits} is the number of
digits per line number (default is 5). Default line counting starts with
first line of the input file (not with the first line printed, see
@samp{-N}).
Provide @var{digits} digit line numbering (default for @var{digits} is
5). With multicolumn output the number occupies the first @var{digits}
column positions of each text column or only each line of @samp{-m}
output. With single column output the number precedes each line just as
@samp{-m} does. Default counting of the line numbers starts with 1st
line of the input file (not the 1st line printed, compare the
@samp{--page} option and @samp{-N} option).
Optional argument @var{number-separator} is the character appended to
the line number to separate it from the text followed. The default
separator is a @key{TAB}. In a strict sense a @key{TAB} is always
printed with single column output only. The @var{TAB}-width varies
with the @var{TAB}-position, e.g. with the left @var{margin} specified
by @samp{-o} option. With multicolumn output priority is given to
@samp{equal width of output columns} (a @var{posix} specification).
The @var{TAB}-width is fixed to the value of the 1st column and does
not change with different values of left @var{margin}. That means a
fixed number of spaces is always printed in the place of the
@var{number-separator tab}. The tabification depends upon the output
position.
@item -N @var{line_number}
@itemx --first-line-number=@var{line_number}
@opindex -N
@opindex --first-line-number
Start line counting with no. @var{line_number} at first line of first
page printed.
Start line counting with the number @var{line_number} at first line of
first page printed (in most cases not the first line of the input file).
@item -o @var{n}
@itemx --indent=@var{n}
@item -o @var{margin}
@itemx --indent=@var{margin}
@opindex -o
@opindex --indent
@cindex indenting lines
@cindex left margin
Indent each line with @var{n} (default is zero) spaces wide, i.e., set
the left margin. The total page width is @var{n} plus the width set
with the @samp{-w} option.
Indent each line with a margin @var{margin} spaces wide (default is zero).
The total page width is the size of the margin plus the @var{page_width}
set with the @samp{-W/-w} option. A limited overflow may occur with
numbered single column output (compare @samp{-n} option).
@item -r
@itemx --no-file-warnings
@@ -1140,34 +1187,50 @@ with the @samp{-w} option.
Do not print a warning message when an argument @var{file} cannot be
opened. (The exit status will still be nonzero, however.)
@item -s[@var{separator}]
@itemx --separator[=@var{separator}]
@item -s[@var{char}]
@itemx --separator[=@var{char}]
@opindex -s
@opindex --separator
Separate columns by a string @var{separator}. Don't use
@samp{-s @var{separator}}, no space between flag and argument. If this
option is omitted altogether, the default is @key{TAB} together with
@samp{-j} option and space otherwise (same as @samp{-s" "}). With
@samp{-s} only, no separator is used (same as @samp{-s""}). @samp{-s}
does not affect line truncation or column alignment.
Separate columns by a single character @var{char}. Default for @var{char}
is the @key{TAB} character without @samp{-w} and @samp{no character} with
@samp{-w}. Without @samp{-s} default separator @samp{space} is set.
@samp{-s[char]} turns off line truncation of all three column options
(@samp{-COLUMN}|@samp{-a -COLUMN}|@samp{-m}) except @samp{-w} is set.
That is a @var{posix} compliant formulation.
@item -S[@var{string}]
@itemx --sep-string[=@var{string}]
@opindex -S
@opindex --sep-string
Separate columns by any string @var{string}. The @samp{-S} option doesn't
react upon the @samp{-W/-w} option (unlike @samp{-s} option does). It
does not affect line truncation or column alignment. A separator is
defined, nothing else. Without @samp{-S}: default separator @key{TAB}
is used with @samp{-J} and @samp{space} otherwise (same as @samp{-S" "}).
With @samp{-S} only: no separator is used, same as @samp{-S""}. Quotes
should be used with blanks and some shell active characters. Some of the
@code{pr} options don't allow the option letter to be separated from its
argument. @samp{-S/-s} is one of them. Don't use @samp{-S "STRING"}.
That's @var{posix} compliant.
@item -t
@itemx --omit-header
@opindex -t
@opindex --omit-header
Do not print the usual header [and footer] on each page, and do not fill
out the bottoms of pages (with blank lines or a form feed). No page
structure is produced, but retain form feeds set in the input files. The
predefined page layout is not changed. @samp{-t} or @samp{-T} may be
useful together with other options; e.g.: @samp{-t -e4}, expand
@key{TAB} in the input file to 4 spaces but do not do any other changes.
Use of @samp{-t} overrides @samp{-h}.
out the bottom of pages (with blank lines or a form feed). No page
structure is produced, but form feeds set in the input files are retained.
The predefined pagination is not changed. @samp{-t} or @samp{-T} may be
useful together with other options; e.g.: @samp{-t -e4}, expand @key{TAB}
in the input file to 4 spaces but don't make any other changes. Use of
@samp{-t} overrides @samp{-h}.
@item -T
@itemx --omit-pagination
@opindex -T
@opindex --omit-pagination
Do not print header [and footer]. In addition eliminate all form feeds
Do not print header [and footer]. In addition eliminate all form feeds
set in the input files.
@item -v
@@ -1180,14 +1243,28 @@ Print unprintable characters in octal backslash notation.
@itemx --width=@var{page_width}
@opindex -w
@opindex --width
Set the page width to @var{page_width} (default 72) characters.
With/without @samp{-w}, header lines are always truncated to
@var{page_width} characters. With @samp{-w}, text lines are truncated,
unless @samp{-j} is used. Without @samp{-w} together with one of the
column options @samp{-@var{column}}, @samp{-a -@var{column}} or
@samp{-m}, default truncation of text lines to 72 characters is used.
Without @samp{-w} and without any of the column options, no line
truncation is used. That's equivalent to @samp{-w 72 -j}.
Set page width to @var{page_width} characters for multiple text-column
output only (default for @var{page_width} is 72). @samp{-s[CHAR]} turns
off the default page width and any line truncation and column alignment.
Lines of full length are merged, regardless of the column options
set. No @var{page_width} setting is possible with single column output.
A @var{posix} compliant formulation.
@item -W @var{page_width}
@itemx --page_width=@var{page_width}
@opindex -W
@opindex --page_width
Set the page width to @var{page_width} characters. That's valid with and
without a column option. Text lines are truncated, unless @samp{-J}
is used. Together with one of the three column options
(@samp{-@var{column}}, @samp{-a -@var{column}} or @samp{-m}) column
alignment is always used. The separator options @samp{-S} or @samp{-s}
don't affect the @samp{-W} option. Default is 72 characters. Without
@samp{-W @var{page_width}} and without any of the column options NO line
truncation is used (defined to keep downward compatibility and to meet
most frequent tasks). That's equivalent to @samp{-W 72 -J}. With and
without @samp{-W @var{page_width}} the header line is always truncated
to avoid line overflow.
@end table
@@ -1207,7 +1284,7 @@ lines. Synopsis:
fold [@var{option}]@dots{} [@var{file}]@dots{}
@end example
By default, @code{fold} breaks lines wider than 80 columns. The output
By default, @code{fold} breaks lines wider than 80 columns. The output
is split into as many lines as necessary.
@cindex screen columns