ホームページ > 記事 > システムチュートリアル > Linux の uniq コマンドの例
uniq は、隣接しない限り重複行を削除しないことに注意してください。したがって、最初にそれらを並べ替えるか、sort コマンドと uniq を組み合わせて結果を取得する必要がある場合があります。いくつかの例を示しましょう。
まず、いくつかの繰り返し行を含むファイルを作成しましょう:
リーリー上記のファイルでわかるように、いくつかの重複行があります (1 行目と 2 行目、3 行目と 5 行目は重複しています)。
引数なしで uniq コマンドを使用すると、連続する重複行がすべて削除され、一意の行のみが表示されます。
リーリーサンプル出力:
ご覧のとおり、uniq コマンドは、指定されたファイル内の連続した重複行をすべて削除します。また、上記の出力では 2 行目と 4 行目がまだ繰り返されていることに気づくかもしれません。これは、uniq コマンドは重複行が隣接している場合にのみ削除するためです。もちろん、連続していない重複行も削除できます。以下の 2 番目の例を参照してください。
サンプル出力:
見ましたか?重複する行はありません。つまり、上記のコマンドは、ostechnix.txt に 1 回だけ出現する行を表示します。 sort コマンドを uniq コマンドと組み合わせて使用します。これは、前述したように、uniq は隣接しない限り重複行を削除しないためです。
ファイル内の唯一の行のみを表示するには、次のようにすることができます:
リーリーサンプル出力:
リーリー
ご覧のとおり、指定されたファイル内で一意なのは 2 行だけです。
同様に、次のようにファイル内の繰り返し行を表示することもできます:
リーリーサンプル出力:
リーリーこれらの 2 行は、ostechnix.txt ファイル内の重複行です。 -d (小文字の d) を指定すると、重複する行のみがグループごとに 1 行ずつ出力されることに注意してください。すべての重複行を出力するには、次のように -D (大文字の D) を使用します:
リーリー以下のスクリーンショットで 2 つのオプションの違いを確認してください:
何らかの理由で、特定のファイル内の各行が繰り返される回数を確認したい場合があります。これを行うには、以下に示すように -c オプションを使用します:
リーリーサンプル出力:
リーリー以下に示すように、各行の出現数で並べ替えて表示することもできます:
リーリーサンプル出力:
リーリー-w オプションを使用すると、ファイル内の特定の文字数への比較を制限できます。たとえば、ファイル内の最初の 4 文字を比較し、次のように重複する行を表示してみましょう:
リーリー比較をファイル内の行の最初の N 文字に制限するのと同様に、-s オプションを使用して最初の N 文字の比較を無視することもできます。
次のコマンドは、比較のためにファイル内の各行の最初の 4 文字を無視します。 リーリー
文字ではなく最初の N フィールド (LCTT アノテーション: 最初の数列) の比較を無視するには、上記のコマンドで -f オプションを使用します。詳細については、ヘルプセクションを参照してください:
リーリー
man コマンドを使用して表示することもできます:リーリー
今日はここまでです! uniq コマンドとその目的について基本的に理解できたと思います。私たちのガイドが役立つと思われた場合は、ソーシャルネットワークで共有し、引き続きサポートしてください。さらに素敵なグッズが登場しますので、お楽しみに!乾杯!
以上がLinux の uniq コマンドの例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。