UNIQ(1)

名称
uniq - ファイル内の重複行の報告または、フィルタ出力

書式
uniq [-c | -d | -u] [-i] [-f num] [-s chars] [ input_file [output_file]]

解説
uniq ユーティリティは、 input_file を読み込み、隣り合う行同士を比較し、 重複した行を取り除いて output_file へ書き込みます。 input_file が単一のダッシュ (‘-’) または無い場合、標準入力が読み込まれます。 output_file が無い場合、標準出力が出力として使用されます。 隣り合った行が同じ内容だったら 2 行目以降を出力しません。 同じ内容でも行が隣り合っていない場合は比較の対象になりませんので、 まずファイルをソートする事が必要になるかもしれません。

オプションとしては以下のものがあります:

-c  各出力行の先頭に、行が入力中に続けて出現した回数を表示し、空白一つあけて その行の内容を表示します。

-d  重複した行のみを出力します。

-f num
    比較する時に、各入力行の先頭から num 個のフィールドを無視します。 フィールドとは、空白文字で区切られた、空白以外の文字からなる文字列です。 num を指定するときは、最初のフィールドを 1 として数えます。

-s chars
    比較する時に、各入力行の先頭から chars 文字を無視します。 本オプションを -f オプションと一緒に指定した場合は、 num 個のフィールドに続く chars 文字が無視されます。 chars を指定するときは、最初の文字を 1 として数えます。

-u  入力の重複がなかった行のみを出力します。

-i  行の比較において大文字小文字を区別しません。

環境変数
LANG, LC_ALL, LC_COLLATE, LC_CTYPE の環境変数が、 environ(7) の記述通りに、 uniq の実行に影響します。

診断

互換性
古くからある +number と -number のオプションは時代遅れですが、この実装ではまだサポートしています。

関連項目
sort(1)

規格
uniq ユーティリティは、 Cor. 1-2002 で改正された p1003.1-2001 に適合しています。

歴史
uniq コマンドは AT&T UNIX から登場しました。