The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

uniq - report or filter out repeated lines in a file

SYNOPSIS

uniq [-c | -d | -u] [-f fields] [-s chars] [input files]

DESCRIPTION

The uniq utility reads the standard input comparing adjacent lines and writes a copy of each unique input line to the standard output. The sec- ond and succeeding copies of identical adjacent input lines are not writ- ten. Repeated lines in the input will not be detected if they are not adjacent, so it may be necessary to sort the files first.

The following options are available:

c

Precede each output line with the count of the number of times the line occurred in the input, followed by a single space.

= item d

Don't output lines that are not repeated in the input.

f fields

Ignore the first fields in each input line when doing compar- isons. A field is a string of non-blank characters separated from adjacent fields by blanks. Field numbers are one based, i.e. the first field is field one.

s chars

Ignore the first chars characters in each input line when doing comparisons. If specified in conjunction with the -f option, the first chars characters after the first fields fields will be ig- nored. Character numbers are one based, i.e. the first character is character one.

u

Don't output lines that are repeated in the input.

If additional arguments are specified on the command line, they are used as the names of input files.

The uniq utility exits 0 on success or >0 if an error occurred.

COMPATIBILITY

The historic -number and +number options are supported as synonyms for -f fields and -s chars, respectively.

This version accepts 0 as a valid argument for the -f and -s switches; some implementations of uniq do not.

SEE ALSO

sort(1)

BUGS

uniq has no known bugs.

AUTHOR

The Perl implementation of uniq was written by Jonathan Feinberg, jdf@pobox.com.

COPYRIGHT and LICENSE

This program is copyright (c) Jonathan Feinberg 1999.

This program is free and open software. You may use, modify, distribute, and sell this program (and any modified variants) in any way you wish, provided you do not restrict others from doing the same.