uniq
uniq(ユニーク)はUNIXおよびUNIX系システムで、テキストをファイルを入力として、隣接する同じ内容の行を1つの行だけ残して他を削除した出力をするユーティリティである。フィルタの一種であり、sortの出力を入力とするような形で使われることが多い。また、逆にダブっている行だけを出力することもできるし(-d オプション)、各行の出現回数を付与することもできる(-c オプション)。
例えば、あるファイルの異なる内容の行を各行の出現頻度順にソートして一覧したい場合、次のようになる。
- sort file | uniq -c | sort -n
コマンド行オプション
編集- -u : 元のファイルで繰り返し出現しない行だけを出力する。
- -d : 元のファイルで繰り返し出現した行だけを出力する。
- -c : 出力の各行の先頭に出現回数を挿入した形式で出力する。これが指定されると -u と -d は無視される。
- -i : 大文字/小文字を区別しないで行を比較する。(GNU 拡張)
- -s n : 各行の先頭 n 文字を無視する。
- -w n : 各行の先頭 n 文字を比較し、それ以降を無視する。