Я хочу сравнить два файла, разделенных
;
с одним и тем же полем1, полем вывода2 файла1 и полем2 поля1 файла2.
Файл1:
16003-Z/VG043;204352
16003/C3;100947
16003/C3;172973
16003/PAB4L;62245
16003;100530
16003;101691
16003;144786
File2:
16003-Z/VG043;568E;0540575;2.59
16003/C3;568E;0000340;2.53
16003/PAB4L;568H;0606738;9.74
16003;568E;0000339;0.71
16003TN9/C3;568E;0042261;3.29
Желаемый вывод:
204352;568E;16003-Z/VG043
100947;568E;16003/C3
172973;568E;16003/C3
62245;568H;16003/PAB4L
100530;568E;16003
101691;568E;16003
144786;568E;16003
Моя попытка:
awk -F\, '{FS=";"} NR==FNR {a[$1]; next} ($1) in a{ print a[$2]";"$2";"$3}' File1 File2 > Output
Выше не работает, вероятно, потому что awk все еще неясен для меня,Проблема в том, что движет выходом?какие $1
, $2
и т. д. относятся к чему?a[$2]
в моем намерении - это поле2 файла 1 .... но это не ...
Что я получаю:
;204352;16003-Z/VG043
;100947;16003/C3
;172973;16003/C3
;62245;16003/PAB4L
;100530;16003
;101691;16003
;144786;16003
спасибо за помощь