Pues para eso existe el comando join
Une archivo1 con archivo2, usando ; como separador de campos, y uniendo por el segundo campo de cada archivo.
Claro que para que funcione correctamente los campos deben estar ordenados por la clave en ambos archivos, hay que usar sort:
Código sh:
Ver originalsort -t ";" -k 2,2 archivo1
sort -t ";" -k 2,2 archivo2
Es decir, ordenar por el segundo campo, usando ";" como separador.
La salida de join dada la entrada que pusiste es
Código:
45687;656;122;513132;......más valores;
55555;203;788;465465;......más valores;
56565;324;665;878788;......más valores;
97889;878;245;554888;......más valores;
Saludos.