uniq コマンドジェネレーター
重複行を報告または省略する uniq コマンドを生成
uniq を使い始める
## uniq とは?
`uniq` は隣接する重複行を取り除く(または報告する)ツールです。**連続した重複だけが圧縮されます** — すべての重複を処理したい場合は、事前に入力をソートしてください。
## 使い方
1. **オプションを設定**(省略可): 件数表示、重複のみ、非重複のみ、大文字小文字の無視。 2. **ファイルを指定**: 入力ファイルを入力します。 3. **コピーして実行**: 生成されたコマンドをターミナルに貼り付けて実行します。
典型的なパイプラインは `sort file.txt | uniq` です。
よく使うモード
### `-c` 件数表示 各行の先頭に、その行が連続して出現した回数を付けます。
### `-d` 重複のみ 繰り返される行のコピーを 1 つだけ出力します(単独行は除外)。`-c` と組み合わせて件数も確認できます。
### `-u` 非重複のみ 一度も繰り返されなかった行だけを出力します。
### `-i` 大文字小文字を無視 比較時に大文字小文字の違いを同等とみなします。
### パイプラインの定石 `uniq` は隣接する一致だけを圧縮するため、`sort` と組み合わせます:
``` sort items.txt | uniq -c | sort -rn ```
出現回数を数え、多い順に並べます。
▶一部の重複行が取り除かれないのはなぜ?
`uniq` は隣接する重複だけを圧縮します。同じ行が別の内容を挟んで離れていると残ってしまいます。入力を事前に `sort` してください: `sort file.txt | uniq`。
▶出現回数の集計を取るには?
`sort file.txt | uniq -c | sort -rn` を使います。`-c` が件数を追加し、最後の `sort -rn` が頻度の降順に並べます。
このツールがあなたに役立ったなら、私にコーヒーをご馳走することをお勧めします。
私にコーヒーを買ってください。