Home
        <a name=

uniq

Uniquify files, write the unique lines in the given `input', or standard input if nothing is given or for an INPUT name of `-'.

SYNTAX
      uniq [OPTION]... [INPUT [OUTPUT]]

OPTIONS

-N
-f N
--skip-fields=N
     Skip N fields on each line before checking for uniqueness.  Fields
     are sequences of non-space non-tab characters that are separated
     from each other by at least one spaces or tabs.

+N
-s N
--skip-chars=N
     Skip N characters before checking for uniqueness.  If you use both
     the field and character skipping options, fields are skipped over
     first.

-c
--count
     Print the number of times each line occurred along with the line.

-i
--ignore-case
     Ignore differences in case when comparing lines.

-d
--repeated
     Print only duplicate lines.

-D
--all-repeated
     Print all duplicate lines and only duplicate lines.  This option
     is useful mainly in conjunction with other options e.g., to ignore
     case or to compare only selected fields.  This is a GNU extension.

-u
--unique
     Print only unique lines.

-w N
--check-chars=N
     Compare N characters on each line (after skipping any specified
     fields and characters).  By default the entire rest of the lines
     are compared.

By default, `uniq' prints the unique lines in a sorted file, i.e., discards all but one of identical successive lines. Optionally, it can instead show only lines that appear exactly once, or lines that appear more than once.

The input must be sorted. If your input is not sorted, perhaps you want to use `sort -u'.

If no OUTPUT file is specified, `uniq' writes to standard output.

Related commands:

sort - Sort text files