1. Introducció als entorns de treball UNIX

1.11. Buscar, ordenar i associar fitxers

1.11.6. «join»

L’ordre join permet unir dos fitxers de text en un fent servir una columna com a clau comuna. Per defecte, join assumeix que el separador de camps és l’espai. L’ordre join és semblant a l’ordre paste  en què la columna comuna que serveix com a enllaç entre ambdues taules no queda duplicada i no requereix que un element estigui als dos arxius. D’altra banda, el que sí que requereix join és que ambdós arxius estiguin ordenats per la columna que es vol usar com a clau. Imaginem que tenim els dos fitxers següents:

$ cat file1.txt
num id atribut

1 CDKL3 chr5

2 CLN8 chr8

5 SOCS2 chr4
$ cat file2.txt
num id atribut

1 AGRN +

3 CDKL3 +

5 CLN8 -

9 FCHO +

L’ordre join ens permet unir aquestes dues taules en una sola utilitzant el camp num (la primera columna de cadascun dels fitxers) com la clau d’unió:

$ join file1.txt file2.txt
num id atributo id atributo

1 CDKL3 chr5 AGRN +

5 SOCS2 chr4 CLN8 -

Per defecte, join assumeix que la clau d’unió és la primera columna, però això es pot modificar:

$ join -1 2 -2 2 file1.txt file2.txt
id num atributo num atributo

CDKL3 1 chr5 3 +

CLN8 2 chr8 5 -