2つのCSVファイルを比較し、最初のファイルで一致する各行を更新しようとしています。
例:
ファイル1.csv
col1,col2,col3,col4
1,11,111,1111
2,22,222,2222
3,33,333,3333
ファイル2.csv
col1,col2,col3,col4
X,11,111,XXXX
Y,22,222,YYYY
Z,ZZ,ZZZ,ZZZZ
この2つのファイル間のcol2とcol3を比較し、一致するものが見つかったら、ファイル1を更新して一致する行を取得しようとしています。
出力file1.csv
:
col1,col2,col3,col4
1,11,111,1111 match found
2,22,222,2222 match found
3,33,333,3333 match not found
ベストアンサー1
使用awk
$ awk -F, 'NR==FNR {a[$2,$3];next} FNR>1 {$0=$0 (($2,$3) in a?" match found" : " match not found")}1' file2.csv file1.csv
col1,col2,col3,col4
1,11,111,1111 match found
2,22,222,2222 match found
3,33,333,3333 match not found