167 lines
4.8 KiB
Groff
167 lines
4.8 KiB
Groff
|
.\" Copyright (c) 1991 Regents of the University of California.
|
||
|
.\" All rights reserved.
|
||
|
.\"
|
||
|
.\" This code is derived from software contributed to Berkeley by
|
||
|
.\" the Institute of Electrical and Electronics Engineers, Inc.
|
||
|
.\"
|
||
|
.\" Redistribution and use in source and binary forms, with or without
|
||
|
.\" modification, are permitted provided that the following conditions
|
||
|
.\" are met:
|
||
|
.\" 1. Redistributions of source code must retain the above copyright
|
||
|
.\" notice, this list of conditions and the following disclaimer.
|
||
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||
|
.\" notice, this list of conditions and the following disclaimer in the
|
||
|
.\" documentation and/or other materials provided with the distribution.
|
||
|
.\" 3. All advertising materials mentioning features or use of this software
|
||
|
.\" must display the following acknowledgement:
|
||
|
.\" This product includes software developed by the University of
|
||
|
.\" California, Berkeley and its contributors.
|
||
|
.\" 4. Neither the name of the University nor the names of its contributors
|
||
|
.\" may be used to endorse or promote products derived from this software
|
||
|
.\" without specific prior written permission.
|
||
|
.\"
|
||
|
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||
|
.\" SUCH DAMAGE.
|
||
|
.\"
|
||
|
.\" @(#)uniq.1 6.4 (Berkeley) 6/27/91
|
||
|
.\"
|
||
|
.Dd June 27, 1991
|
||
|
.Dt UNIQ
|
||
|
.Os
|
||
|
.Sh NAME
|
||
|
.Nm uniq
|
||
|
.Nd Report or filter out repeated lines in a file.
|
||
|
.Sh SYNOPSIS
|
||
|
.Nm uniq
|
||
|
.Op Fl c | Fl d | Fl u
|
||
|
.Op Fl f Ar fields
|
||
|
.Op Fl s Ar chars
|
||
|
.Oo
|
||
|
.Ar input_file
|
||
|
.Op Ar output_file
|
||
|
.Oc
|
||
|
.Pp
|
||
|
Deprecated Version:
|
||
|
.Pp
|
||
|
.Nm uniq
|
||
|
.Op Fl cdu
|
||
|
.Op Fl Ns Ar n
|
||
|
.Op Cm \(pl Ns Ar n
|
||
|
.Oo
|
||
|
.Ar input_file
|
||
|
.Op Ar output_file
|
||
|
.Oc
|
||
|
.Sh DESCRIPTION
|
||
|
The
|
||
|
.Nm uniq
|
||
|
utility reads an input file or the standard input
|
||
|
comparing adjacent
|
||
|
lines, and writes one copy of each input line on the output.
|
||
|
The second and succeeding copies of repeated adjacent input
|
||
|
lines are not written.
|
||
|
Repeated lines in the input are not detected if they are
|
||
|
not adjacent, so it is important to
|
||
|
.Xr sort 1
|
||
|
the files first.
|
||
|
.Pp
|
||
|
The following options are available:
|
||
|
.Bl -tag -width Ds
|
||
|
.It Fl c
|
||
|
Precede each output line with a count of the number
|
||
|
of times the line occurred in the input. For example:
|
||
|
.Bd -literal -offset indent
|
||
|
duplicate_count line_number
|
||
|
.Ed
|
||
|
.Pp
|
||
|
where the duplicate count is a blank padded field of
|
||
|
up to four digits followed by a space.
|
||
|
.It Fl d
|
||
|
Suppress the writing of lines that are not repeated
|
||
|
in the input.
|
||
|
.It Fl f Ar fields
|
||
|
Ignore the first fields on each input line when
|
||
|
doing comparisons, where fields is a positive
|
||
|
decimal integer.
|
||
|
A field is a string of non-blank
|
||
|
characters separated from adjacent fields
|
||
|
by blanks.
|
||
|
.It Fl s Ar chars
|
||
|
Ignore the first chars characters when doing
|
||
|
comparisons, where chars is a positive decimal
|
||
|
integer.
|
||
|
If specified in conjunction with the
|
||
|
.Fl f
|
||
|
option, the first chars characters after the first
|
||
|
fields fields will be ignored.
|
||
|
.It Fl u
|
||
|
Suppress the writing of lines that are repeated in
|
||
|
the input.
|
||
|
.It Fl Ns Ar n
|
||
|
(Deprecated; replaced by
|
||
|
.Fl f ) .
|
||
|
Ignore the first n
|
||
|
fields on each input line when doing comparisons,
|
||
|
where n is a number.
|
||
|
A field is a string of non-blank
|
||
|
characters separated from adjacent fields
|
||
|
by blanks.
|
||
|
.It Cm \&\(pl Ns Ar n
|
||
|
(Deprecated; replaced by
|
||
|
.Fl s ) .
|
||
|
Ignore the first
|
||
|
.Ar m
|
||
|
characters when doing comparisons, where
|
||
|
.Ar m
|
||
|
is a
|
||
|
number.
|
||
|
.El
|
||
|
.Pp
|
||
|
The following operands are available:
|
||
|
.Bl -tag -width output_filex
|
||
|
.It Ar input_file
|
||
|
A pathname of the input file.
|
||
|
If the
|
||
|
.Ar input_file
|
||
|
operand is not specified, the standard input is
|
||
|
used.
|
||
|
.It Ar output_file
|
||
|
A pathname of the output file.
|
||
|
This name shall
|
||
|
always be different from
|
||
|
.Ar input_file.
|
||
|
If the
|
||
|
.Ar output_file
|
||
|
operand is not specified, the standard
|
||
|
output is used. If
|
||
|
.Ar output_file
|
||
|
is created and an error occurs or a sugnal is caught the
|
||
|
.Ar output_file
|
||
|
is not removed.
|
||
|
.El
|
||
|
.\" .Pp
|
||
|
.\" The following environment variables affect the execution of
|
||
|
.\" uniq:
|
||
|
.\" .Tl Em LC_CTYPE
|
||
|
.\" The locale for character classification, used to
|
||
|
.\" determine the characters constituting a blank in
|
||
|
.\" the current locale.
|
||
|
.Pp
|
||
|
The
|
||
|
.Xr uniq
|
||
|
utility exits 0 on success, and >0 if an error occurs.
|
||
|
.Sh STANDARDS
|
||
|
The
|
||
|
.Xr uniq
|
||
|
utility is expected to be
|
||
|
.St -p1003.2
|
||
|
compatible.
|