Unir declaración omitiendo entradas

Utilizando: Unix 2.6.18-194.el5

Tengo un problema en el que esta declaración de unión omite valores / índices de la coincidencia. Descubrí que los valores están entre 11-90 (de aproximadamente 3.5 millones de entradas) y he tratado de buscar caracteres extranjeros, pero puedo estar pasando por alto algo (Intenté cat -v para ver caracteres ocultos).

Aquí está la declaración de unión que estoy usando (solo simplifiqué las columnas de salida por seguridad):

join -t "|" -j 1 -o 1.1 2.1 file1 file2> fileJoined

Contenido del archivo 1 (primeros 20 valores):

1 3 7 11 12 16 17 19 20 21 27 28 31 33 34 37 39 40 41 42

contenido de file2 (primeros 50 valores para que pueda ver dónde coincidiría):

1 | US 2 | US 3 | US 4 | US 5 | US 6 | US 7 | US 8 | US 9 | US 10 | US 11 | US 12 | US 13 | US 14 | US 15 | US 16 | US 17 | US 18 | US 19 | US 20 | US 21 | US 22 | US 23 | US 24 | US 25 | US 26 | US 27 | US 28 | US 29 | US 30 | US 31 | US 32 | US 33 | US 34 | US 35 | US 36 | US 37 | US 38 | US 39 | US 40 | US 41 | US 42 | US 43 | US 44 | US 45 | US 46 | US 47 | US 48 | US 49 | US 50 | US

De mis pruebas iniciales parece que file2 es el culpable. Porque cuando creo un nuevo archivo con valores 1-100 puedo hacer que la declaración de unión coincida completamente con el archivo1; sin embargo, el mismo archivo no coincidirá con el archivo2.

Otra cosa extraña es que el archivo tiene una longitud de 3.5 millones de registros y en el valor 90 comienzan a coincidir nuevamente. Por ejemplo, la salida de fileJoined se ve así (solo los primeros 20 valores):

1 | 1 3 | 3 7 | 7 90 | 90 91 | 91 92 | 92 93 | 93 95 | 95 96 | 96 97 | 97 98 | 98 99 | 99 106 | 106 109 | 109 111 | 111 112 | 112 115 | 115 116 | 116 117 | 117 118 | 118

Otras cosas que he probado son:

Usar vi para ingresar manualmente una nueva línea 11 (aún no coincide en la declaración de unión)copiando el código en el bloc de notas, eliminando las líneas en vi y luego volviéndolas a copiar en (mismo resultado, no coinciden 11-90)Eliminando las líneas 11-90 para ver si el problema cambia a 90-170 y no cambia

Creo que puede haber algunos valores ocultos que me faltan, o que el 11 - 90 del archivo1 no es el mismo equivalente binario que el 11 - 90 en el archivo2?

Estoy perdido aquí, cualquier ayuda sería muy apreciada.

Respuestas a la pregunta(1)

Su respuesta a la pregunta