Uniq

uniqOriginal author(s)| Ken Thompson
(AT&T Bell Laboratories)

|

Developer(s)| Various open-source and commercial developers
Initial release| February 1973; 53 years ago (1973-02)
Written in| C
Operating system| Unix, Unix-like, Plan 9, Inferno, MSX-DOS, IBM i
Platform| Cross-platform
Type| Command
License| coreutils: GPLv3+
Plan 9: MIT License
Website| man7.org/linux/man-pages/man1/uniq.1.html

`uniq` is a utility command on Unix, Plan 9, Inferno, and Unix-like operating systems which, when fed a text file or standard input, outputs the text with adjacent identical lines collapsed to one, unique line of text.

## Contents

* 1 Overview
* 2 History
* 3 See also
* 4 References
* 5 External links

## Overview

The command is a kind of filter program. Typically it is used after `sort`. It can also output only the duplicate lines (with the `-d` option), or add the number of occurrences of each line (with the `-c` option). For example, the following command lists the unique lines in a file, sorted by the number of times each occurs:

$ sort file | uniq -c | sort -n

Using `uniq` like this is common when building pipelines in shell scripts.

## History

First appearing in Version 3 Unix,[1] `uniq` is now available for a number of different Unix and Unix-like operating systems. It is part of the X/Open Portability Guide since issue 2 of 1987. It was inherited into the first version of POSIX and the Single Unix Specification.[2]

The version bundled in GNU coreutils was written by Richard Stallman and David MacKenzie.[3]

A `uniq` command is also part of ASCII's MSX-DOS2 Tools for MSX-DOS version 2.[4]

The command is available as a separate package for Microsoft Windows as part of the GnuWin32 project[5] and the UnxUtils collection of native Win32 ports of common GNU Unix-like utilities.[6]

The uniq command has also been ported to the IBM i operating system.[7]

## See also

* List of Unix commands

## References

1. ↑ McIlroy, M. D. (1987). A Research Unix reader: annotated excerpts from the Programmer's Manual, 1971–1986 (PDF) (Technical report). CSTR. Bell Labs. 139.
2. ↑ `uniq` – Commands & Utilities Reference, The Single UNIX Specification, Issue 7 from The Open Group
3. ↑ `uniq(1)` – Linux General Commands Manual
4. ↑ MSX-DOS2 Tools User's Manual by ASCII Corporation
5. ↑ "CoreUtils for Windows". https://gnuwin32.sourceforge.net/packages/coreutils.htm.
6. ↑ "Native Win32 ports of some GNU utilities". https://unxutils.sourceforge.net/.
7. ↑ IBM. "IBM System i Version 7.2 Programming Qshell" (in en). https://www.ibm.com/support/knowledgecenter/ssw_ibm_i_74/rzahz/rzahzpdf.pdf?view=kc.

## External links

| The Wikibook Guide to Unix has a page on the topic of: Commands

|

* `uniq(1)` – Linux User's Manual – User Commands
* `uniq(1)` – Plan 9 Programmer's Manual, Volume 1
* `uniq(1)` – Inferno General commands Manual
* SourceForge UnxUtils – Port of several GNU utilities to Windows

* v
* t
* e

Unix command-line interface programs and shell builtins

File system|

* cat
* chmod
* chown
* chgrp
* cksum
* cmp
* cp
* dd
* du
* df
* file
* fuser
* ln
* ls
* mkdir
* mv
* pax
* pwd
* rm
* rmdir
* split
* tee
* touch
* type
* umask

Processes|

* at
* bg
* crontab
* fg
* kill
* nice
* ps
* time

User environment|

* env
* exit
* logname
* mesg
* talk
* tput
* uname
* who
* write

Text processing|

* awk
* basename
* comm
* csplit
* cut
* diff
* dirname
* ed
* ex
* fold
* head
* iconv
* join
* m4
* more
* nl
* paste
* patch
* printf
* sed
* sort
* strings
* tail
* tr
* uniq
* vi
* wc
* xargs

Shell builtins|

* alias
* cd
* echo
* test
* unset
* wait

Searching|

* find
* grep

Documentation|

* man

Software development|

* ar
* ctags
* lex
* make
* nm
* strip
* yacc

Miscellaneous|

* bc
* cal
* expr
* lp
* od
* sleep
* true and false

* Categories
* Standard Unix programs
* Unix SUS2008 utilities
* List

Template:Plan 9 commands Template:Core Utilities commands

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/Uniq. Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=Software:Uniq&oldid=4291649"
*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template