Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

commコマンドで二つのファイルの共通項や違うトコを検出

diffコマンドとはちょっと異なる、比較用コマンド。

実際のところ

二つのファイルを比較するが、ソートされている事が前提。
こんなファイルがあったとして

$ cat test1.txt
00
11
22
33
44
$ cat test2.txt
11
44
99

まず、共通の物を出力するには"-12"

$ comm -12 test1.txt test2.txt
11
44

最初のファイルにのみ存在する場合"-23"

~$ comm -23 test1.txt test2.txt
00
22
33

あとのファイルだけなら"-13"

$ comm -13 test1.txt test2.txt
99

辞書比較

uniqコマンドを組み合わせると、辞書比較もできる。
複数のパターンが想定される場合、一旦きってから条件分岐を書くとかできるかも。
条件が数個ならGrepコマンドを毎回実行でもいいでしょうが、パイプつなぎなら多分そっちが楽。