Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

Jump to content

uniq

From Wikipedia, the free encyclopedia
uniq
Original authorsKen Thompson
(AT&T Bell Laboratories)
DevelopersVarious open-source and commercial developers
ReleaseFebruary 1973; 53 years ago (1973-02)
Written inC
Operating systemUnix, Unix-like, Plan 9, Inferno, MSX-DOS, IBM i
PlatformCross-platform
TypeCommand
Licensecoreutils: GPLv3+
Plan 9: MIT License
Websiteman7.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.

Overview

[edit]

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

[edit]

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

[edit]

References

[edit]
  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  Shell and Utilities Reference, The Single UNIX Specification, Version 5 from The Open Group
  3. uniq(1)  Linux General Commands Manual from ManKier.com
  4. MSX-DOS2 Tools User's Manual by ASCII Corporation
  5. "CoreUtils for Windows". Archived from the original on 2025-07-30. Retrieved 2026-02-03.
  6. "Native Win32 ports of some GNU utilities". Archived from the original on 2006-02-09. Retrieved 2026-02-03.
  7. IBM. "IBM System i Version 7.2 Programming Qshell" (PDF). IBM. Archived (PDF) from the original on 2020-09-18. Retrieved 2020-09-05.
[edit]