A joinUnix-utasítás a relációs adatbázisokban szokásos join műveletet végzi el két szövegfile között. Az utasítás a két file-t szövegtáblázatnak tekinti, a sorokat egy elválasztó karakterrel (alaphelyzetben helyközzel, de ez változtatható) oszlopokra vágja.
Mindkét file-ban meg kell adni egy-egy speciális kulcsoszlopot. A join összepárosítja az azonos értékeket a két file kulcsoszlopaiban, és az eredményben egyetlen sorként írja ki; a kulcsoszlopot csak egyszer, azt követi az első, majd a második file többi oszlopa.
Mindkét file a saját kulcsoszlopa szerint rendezett kell legyen.
Az utasítás alakja
join kapcsolók file1 file2
A kapcsolók egybetűsek, a hozzájuk tartozó értéket helyközzel kell elválasztani. A fontosabbak:
-1
oszlop
az első file kulcsnak kijelölt oszlopa (alapérték: 1)
-2
oszlop
a második file kulcsnak kijelölt oszlopa (alapérték: 1)
-t
karakter
az oszlopokat elválasztó karakter (alaphelyzetben helyköz)
-a
n
filen sorait írja ki akkor is, ha nincs párjuk a másik file-ban (outer join)
-v
n
filen azon sorait írja ki, melyeknek nincs párjuk a másik file-ban
Linuxban ha mindkét file-ban azonos oszlop a kulcs, ezt az oszlopot a -j kapcsolóval adhatjuk meg.
Példa
f1.txt második, f2.txt első oszlopa a kulcs. Mindkét file a kulcsra rendezett.
f2.txt-ben két azonos kulcsú sor található.