Tengo dos archivos donde quiero realizar la operación de unión basado en 1ª columna:relleno de campos vacía en Unix operación de unión
file1.txt
foo 1
bar 2
qux 3
file2.txt
foo x
qux y
boo z
El resultado que espero obtener es el siguiente:
foo 1 x
bar 2 -
qux 3 y
boo - z
donde los campos vacíos de la columna 1 están rellenos con "-".
¿Pero por qué este comando de unión no funciona como esperaba?
$ join -a1 -a2 -e"-" file1.txt file2.txt
¿Cuál es la forma correcta de hacerlo?
@Alex: muchas gracias. No entiendo la opción "-o '1.1,2.1,1.2,2.2'". ¿Dónde puedo encontrar información sobre eso? Además, si no te importa el awk por favor? – neversaint
He editado la respuesta para explicar el -o, pero miro 'man awk': como lo hice, para verificar mi explicación, me acordé del valor 0 para el número de campo, que ahora he usado en el ejemplo editado y hace que el procesamiento posterior no sea necesario. ¡Pero recuerde ordenar sus archivos de antemano! -) –
@Alex, gracias un millón. – neversaint