join - UNIX-szerű operációs rendszerek parancsa, amely két rendezett szövegfájl sorait kombinálja egy közös mező megléte alapján . Funkciója hasonló az SQL nyelvben használt Join operátorhoz , de szöveges fájlokon működik. Ezt a segédprogramot Mike Haertel írta .
A parancs joinkét szövegfájlt és számos argumentumot vesz fel bemenetként. Ha nem adunk meg parancssori argumentumot , akkor ez a parancs sorpárokat keres két fájlban, amelyeknek van egy megfelelő első mezője (nem szóköz karakterek sorozata), és egy karakterláncot ad ki, amely az első mezőből és mindkét sor tartalmából áll. .
A program argumentumai határozzák meg, hogy melyik karakter kerüljön szóköz helyett a karakterlánc mezőinek elválasztására, amely ellenőrzésre kerül a megfelelő karakterláncok keresésekor, és hogy adjon-e ki nem egyező karakterláncokat vagy sem. Az adatokat átirányítással egy harmadik fájlba is kiadhatja .
Az egyszerűsített szintaxis a következőképpen ábrázolható:
csatlakozás [opciók] fájl1 fájl2Ha az egyik fájlként "-" van megadva (de nem mindkettőt egyszerre!), akkor a fájl helyett az [1] szabványos bemenet kerül beolvasásra . A fájlokat növekvő ASCII lexikográfiai sorrendbe kell rendezni, kapcsolódási mezők szerint (általában minden sor első mezője szerint). A művelet eredménye sorokat ad, egyet a fájl1 és fájl2 kapcsolatok sorpárjaihoz, amelyek ugyanazokkal az összekapcsolási mezőkkel rendelkeznek. Az eredmény karakterlánc általában a közös mezőből, majd a file1 relációs karakterlánc maradékából, majd a file2 relációs karakterlánc maradékából áll. Alapértelmezés szerint a kimeneti elválasztó szóköz. A szabványos mezőelválasztók esetében a leválogatási sorrend nem veszi figyelembe a bevezető szóközöket. Ha az opció adott -t, akkor minden karakter jelentős. Ha a fájlnév számokból áll, akkor kölcsönhatásba léphet a -oközvetlenül a fájl argumentumai előtti opcióval [2] .
Példaként vegyük a következő két fájlt.
1. fájl:
sor1 szöveg1 sor2 szöveg22. fájl:
sor1 szöveg11 sor3 szöveg3A parancs join(további paraméterek nélkül) a következő eredményt adja:
sor1 szöveg1 szöveg11Ennek az az oka, hogy mindkét fájlban csak a „sor1” szó szerepelt a sor első szavaként.
Ez a program a Free Software Foundation tulajdonában van, és a GNU General Public License [1] értelmében ingyenes szoftverként terjesztik .
Unix parancsok | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
|