地方在住IT系ニート

bkds

uniqコマンドのメモ

uniqコマンドとは

並べ替えられたテキストから重複した行を削除するコマンドです。
並べ替えられていない場合は、想定通りの結果が得られないため、sortコマンドを使って並べ替える必要があります。

↓元のテキストファイル
$ cat text.txt
dadada
aaaaaa
dadada
dadada
aaaaaa

↓並べ替えずにuniqコマンドを実行した結果
$ uniq text.txt 
dadada
aaaaaa
dadada
aaaaaa

↓並べ替えてuniqコマンドを実行した結果
$ sort text.txt | uniq
aaaaaa
dadada

sort + uniq + wcをセットで利用することで、データのユニーク数を取得することができます。

$ sort text.txt | uniq | wc -l
2

オプション

uniqコマンドには以下のオプションがあります。

  • -i (--ignore-case)
    • 大文字・小文字を区別しない
  • -c
    • 重複した行をカウントする
  • -d
    • 重複した行を出力する
にほんブログ村 IT技術ブログ IT技術メモへPVアクセスランキング にほんブログ村