joinコマンド

基本

join ファイル名1 ファイル名2

両方にある行番号1と3のみの結果を表示

f:id:mkyosuke:20200311181256p:plain

 

-a

join -a すべての行を表示するファイル番号 ファイル名1 ファイル名2

f:id:mkyosuke:20200311183914p:plain

 

-i

項目名を検索する時大文字と小文字を区別せずにファイルを結合する場合

f:id:mkyosuke:20200312102840p:plain

 

-j

一致に使う項目を指定する

join -j 項目番号 ファイル名1 ファイル名2

f:id:mkyosuke:20200312103929p:plain

 

-1

1つめに指定したファイルで一致に使う項目を指定する

join -1 項目番号 ファイル名1 ファイル名2

f:id:mkyosuke:20200312110822p:plain

 

-2

2つめに指定したファイルで一致に使う項目を指定する

join -2 項目番号 ファイル名1 ファイル名2

f:id:mkyosuke:20200312111633p:plain

 

-e

指定したフィールドがなければ任意の文字列を表示する

join 他のオプション -e 文字列 ファイル名1 ファイル名2

※一致させないために-j 5 を指定

f:id:mkyosuke:20200312112300p:plain

 

-t

区切り文字を指定する

join -t 区切り文字 ファイル名1 ファイル名2

f:id:mkyosuke:20200312113247p:plain

 

--check-order

一致させる項目が昇順に並んでいるかチェックする

join --check-order ファイル名1 ファイル名2

f:id:mkyosuke:20200312115931p:plain

 

--nocheck-order

一致させる項目が昇順に並んでいるかチェックしない

join --nocheck-order ファイル名1 ファイル名2

f:id:mkyosuke:20200312120057p:plain

 

--header

ファイルの1行目はフィールド名として扱う

join --header ファイル名1 ファイル名2

f:id:mkyosuke:20200312120838p:plain