joinコマンドCSVファイルのようにセパレータを持つデータファイルが2つある時、(互いに共通な)キーを使って、2つのファイルをマージする。SQLのテーブルジョインのような事をするコマンド。 前提A.csv: 1,ONE 2,TWO 3,THREE 4,FOUR B.csv: one,1 three,3 two,2 1,2,3,4が結合キー。 使い方最初に、sort +1 -t , B.csv > C.csv キーはソートをかけておくこと! 単純なJOINjoin -t , -1 1 -2 2 A.csv C.csv 1,ONE,one 2,TWO,two 3,THREE,three
LEFT OUTER JOIN(片方のファイルにない行も表示する)join -t , -a 1 -1 1 -2 2 A.csv C.csv 1,ONE,one 2,TWO,two 3,THREE,three 4,FOUR
他にもオプションはあるが、Perlでやった方がわかりやすそう。 |
|