Это расширение вопроса ( Awk: использование файла для фильтрации другого (out.tr) )
awk 'FNR==NR { a[$NF]; next } $NF in a' other main
Я полностью понимаю ($ NF в a), т.е.искать последний столбец MainFile в массиве a.Но что хранится в массиве [$ NF], это последний столбец другого файла или полный файл.
У меня есть другой файл (через запятую), и я хочу использовать 2-й столбец для фильтрации данных основного файла.Как команда узнает, что [$ 2] хранит 2-й столбец другого файла, который должен храниться в массиве и будет использоваться для фильтрации основного файла.
Например, если у меня есть MainFile, который содержит данныекак
Date|par|Id|Number
21-Jun|0|123000|20000
20-Jun|1|123000|20000
21-Jun|0|156000|2327
21-Jun|1|156000|500000
21-Jun|0|250000|15000
20-Jun|0|251000|15000
20-Jun|0|100000|423423
18-Jun|1|102000|30000
19-Jun|0|102000|1500
Другой файл (id1), который используется для фильтрации MainFile (Id)
date,id1,id2,id3
21Jun,123000,5665,34234
21Jun,102000,23654,324
19Jun,251000,1231,123123
Результат выше должен быть
Date|par|Id|Number
21-Jun|0|123000|20000
20-Jun|1|123000|20000
20-Jun|0|251000|15000
18-Jun|1|102000|30000
19-Jun|0|102000|1500