1.\" Copyright (c) 1991, 1993 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" This code is derived from software contributed to Berkeley by 5.\" the Institute of Electrical and Electronics Engineers, Inc. 6.\" 7.\" Redistribution and use in source and binary forms, with or without 8.\" modification, are permitted provided that the following conditions 9.\" are met: 10.\" 1. Redistributions of source code must retain the above copyright 11.\" notice, this list of conditions and the following disclaimer. 12.\" 2. Redistributions in binary form must reproduce the above copyright 13.\" notice, this list of conditions and the following disclaimer in the 14.\" documentation and/or other materials provided with the distribution. 15.\" 3. All advertising materials mentioning features or use of this software 16.\" must display the following acknowledgement: 17.\" This product includes software developed by the University of 18.\" California, Berkeley and its contributors. 19.\" 4. Neither the name of the University nor the names of its contributors 20.\" may be used to endorse or promote products derived from this software 21.\" without specific prior written permission. 22.\" 23.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 24.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 25.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 26.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 27.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 28.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 29.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 30.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 31.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 32.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 33.\" SUCH DAMAGE. 34.\" 35.\" From: @(#)uniq.1 8.1 (Berkeley) 6/6/93 36.\" $FreeBSD$ 37.\" 38.Dd July 3, 2004 39.Dt UNIQ 1 40.Os 41.Sh NAME 42.Nm uniq 43.Nd report or filter out repeated lines in a file 44.Sh SYNOPSIS 45.Nm 46.Op Fl c | Fl d | Fl u 47.Op Fl i 48.Op Fl f Ar num 49.Op Fl s Ar chars 50.Oo 51.Ar input_file 52.Op Ar output_file 53.Oc 54.Sh DESCRIPTION 55The 56.Nm 57utility reads the specified 58.Ar input_file 59comparing adjacent lines, and writes a copy of each unique input line to 60the 61.Ar output_file . 62If 63.Ar input_file 64is a single dash 65.Pq Sq Fl 66or absent, the standard input is read. 67If 68.Ar output_file 69is absent, standard output is used for output. 70The second and succeeding copies of identical adjacent input lines are 71not written. 72Repeated lines in the input will not be detected if they are not adjacent, 73so it may be necessary to sort the files first. 74.Pp 75The following options are available: 76.Bl -tag -width Ds 77.It Fl c 78Precede each output line with the count of the number of times the line 79occurred in the input, followed by a single space. 80.It Fl d 81Only output lines that are repeated in the input. 82.It Fl f Ar num 83Ignore the first 84.Ar num 85fields in each input line when doing comparisons. 86A field is a string of non-blank characters separated from adjacent fields 87by blanks. 88Field numbers are one based, i.e., the first field is field one. 89.It Fl s Ar chars 90Ignore the first 91.Ar chars 92characters in each input line when doing comparisons. 93If specified in conjunction with the 94.Fl f 95option, the first 96.Ar chars 97characters after the first 98.Ar num 99fields will be ignored. 100Character numbers are one based, i.e., the first character is character one. 101.It Fl u 102Only output lines that are not repeated in the input. 103.It Fl i 104Case insensitive comparison of lines. 105.\".It Fl Ns Ar n 106.\"(Deprecated; replaced by 107.\".Fl f ) . 108.\"Ignore the first n 109.\"fields on each input line when doing comparisons, 110.\"where n is a number. 111.\"A field is a string of non-blank 112.\"characters separated from adjacent fields 113.\"by blanks. 114.\".It Cm \&\(pl Ns Ar n 115.\"(Deprecated; replaced by 116.\".Fl s ) . 117.\"Ignore the first 118.\".Ar m 119.\"characters when doing comparisons, where 120.\".Ar m 121.\"is a 122.\"number. 123.El 124.Sh ENVIRONMENT 125The 126.Ev LANG , 127.Ev LC_ALL , 128.Ev LC_COLLATE 129and 130.Ev LC_CTYPE 131environment variables affect the execution of 132.Nm 133as described in 134.Xr environ 7 . 135.Sh EXIT STATUS 136.Ex -std 137.Sh COMPATIBILITY 138The historic 139.Cm \&\(pl Ns Ar number 140and 141.Fl Ns Ar number 142options have been deprecated but are still supported in this implementation. 143.Sh SEE ALSO 144.Xr sort 1 145.Sh STANDARDS 146The 147.Nm 148utility conforms to 149.St -p1003.1-2001 150as amended by Cor.\& 1-2002. 151.Sh HISTORY 152A 153.Nm 154command appeared in 155.At v3 . 156.Sh BUGS 157Input lines are limited to 158.Dv LINE_MAX 159(2048) bytes in length. 160