Я пытаюсь сравнить файлы в системе Ubuntu. Оба файла имеют одинаковую структуру двух столбцов, и если значение столбца два совпадает для данной строки, вычтите значения столбца 1 для одной и той же строки.
Я попробовал пару вещей, наиболее близкий мне с этой командой:
awk 'NR==FNR{a[$1]=$1;b[$2]=$2;next} {if ($2 in b) print $1-a[$1]," ",$2}' file1 file 2
Но я предполагаю, что у меня что-то не так, потому что результат, кажется, подтверждает только строки, которые заполняют условие, в котором совпадает второй столбец, но допускает только строки, имеющие одинаковое значение для первого столбец.
Например:
Файл1:
10 A
20 B
30 C
10 D
Файл2:
10 A
20 E
20 F
50 D
Должен вернуть:
0 A
-40 D
Возвращает:
0 A