report repeated lines in a file
uniq [ -c | -d | -u ] [
-f fields ] [ -s chars ] [
-n ] [ +n ] [
input [ output ] ]
The uniq command reads the input file and
compares adjacent lines. In the normal case, the second and
succeeding copies of repeated lines are removed and the lines are
compared according to the collating sequence defined by the current
the remainder is written to the output file. The names
input and output should always be different. If
input is ``-'' then standard input is used.
Note that repeated lines must be adjacent in order to be found; see
If the -u flag is used, just the lines that are not
repeated in the original file are output. The -d option
specifies that one copy of just the repeated lines is to be
written. The normal mode output is the union of the -u
and -d mode outputs.
The -c option supersedes -u and -d
and generates an output report in default style but with each line
preceded by a count of the number of times it occurred.
The other arguments specify skipping an initial portion of each line
in the comparison:
The first n fields together with any blanks before each
are ignored. A field is defined as a string of nonspace, nontab
characters separated by tabs and spaces from its neighbors.
The first n characters are ignored. Fields are skipped
Same as -n, where n is
Same as +n, where n is
uniq is conformant with:
ISO/IEC DIS 99452:1992, Information technology Portable Operating System Interface (POSIX) Part 2: Shell and Utilities (IEEE Std 1003.21992);
AT&T SVID Issue 2;
X/Open CAE Specification, Commands and Utilities, Issue 4, 1992.
© 2005 The SCO Group, Inc. All rights reserved.
SCO OpenServer Release 6.0.0 -- 03 June 2005