Experimente o comando join
:
NAME join - join lines of two files on a common field
SYNOPSIS join [OPTION]... FILE1 FILE2
DESCRIPTION For each pair of input lines with identical join fields, write a line to standard output. The default join field is the first, delimited by whitespace. When FILE1 or FILE2 (not both) is -, read standard input.
Então você deve ser capaz de fazer:
join file_A.csv file_B.csv > file_AB.csv
Você pode ter que juntar seus primeiros e segundos campos em um para que isso funcione - como em essência eles podem ser vistos como um campo de qualquer maneira.
Eu apenas verifiquei duas vezes e parece funcionar, contanto que seus arquivos tenham o formato, por exemplo:
file_A.csv
ID_aID_b, a, b, c
key_aA, a1, b1, c1
key_aB, a2, b2, c2
key_bA, a3, b3, c3
como mencionei acima.