Unix-commands-comm
提供:Dev Guides
comm-Unix、Linuxコマンド
NAME
*comm* -ソートされた2つのファイルを1行ずつ比較し、標準出力に書き込みます:共通の行と一意の行。
概要
comm [options]... File1 File2
説明
「comm」を使用する前に、「LC_COLLATE」ロケールで指定された照合シーケンスを使用して入力ファイルをソートする必要があります。末尾の改行は有効です。 入力ファイルが改行以外の文字で終わる場合、改行が暗黙的に追加されます。 オプションなしの「sort」コマンドは、常に「comm」への入力に適したファイルを出力します。 オプションがない場合、「comm」は3列の出力を生成します。 1列目はFILE1に固有の行を含み、2列目はFILE2に固有の行を含み、3列目は両方のファイルに共通の行を含みます。 列は単一のTAB文字で区切られます。
オプション-1、-2、および-3は、対応する列の印刷を抑制します。 他の比較ユーティリティとは異なり、「comm」の終了ステータスは比較の結果に依存しません。 通常の完了時に、「comm」はゼロの終了コードを生成します。 エラーがある場合、ゼロ以外のステータスで終了します。
オプション
-1 | suppress lines unique to file1. |
-2 | suppress lines unique to file2. |
-3 | suppress lines that appear in both files. |
例
words.txtに固有の行を表示します
$ cat words.txt
Apple
Banana
Orange
India
US
Canada
$ cat countries.txt
India
US
Canada
$ comm -23 < (sort words.txt | uniq) < (sort countries.txt | uniq)
Apple
Banana
Orange
words.txtとcountrys.txtに共通の行を表示します。
$ comm -12 < (sort words.txt | uniq) < (sort countries.txt | uniq)
India
US
Canada
link:/cgi-bin/printpage.cgi [__印刷]