SORT(1) | General Commands Manual | SORT(1) |
sort - szövegfile sorainak rendezése
sort [-cmus] [-t elválasztó] [-o
kimeneti-fájl] [-T átmeneti könyvtár] [-bdfiMnr]
[+POS1 [-POS2]] [-k POS1[,POS2]] [fájl...]
sort {--help,--version}
Ez a dokumentáció a továbbiakban nincs karbantartva és pontatlan vagy hiányos lehet. A Texinfo dokumentáció a hiteles forrás.
Ez a kézikönyv oldal a sort parancs GNU verzióját írja le. A sort parancs rendezi, összefűzi vagy összehasonlítja a megadott szövegfájlok, vagy ha nincs file megadva, a szabványos bemenet minden sorát. A '-' filenév a standard inputot jelenti. Alapértelmezés szerint a sort a szabványos kimenetre írja az eredményt.
A sort -nak 3 működési módja van: rendezés (ez az alapértelmezés), összefűzés és a rendezettség vizsgálata. A működést a következő opciók változtatják meg:
Két sor összefűzése a következőképpen működik: ha bármilyen kulcsmezőt kap, akkor a sort a parancssorban megadott sorrendben összehasonlítja a mezőket a megadott rendezési opciók szerint, s mindaddig megy, amíg különbséget nem talál, vagy nem marad több mező.
Ha az Mbdfinr globális opciók közül bármelyik meg van adva, de nincs megadott kulcsmező, akkor teljes sorokat hasonlít össze az opcióknak megfelelően.
Végül pedig, ha minden kulcs azonos (vagy semmilyen rendezési opció nincs megadva), végső megoldásként byteonként mechanikusan összehasonlítja a sorokat. Ez az összehasonlítás elfogadja a -r opciót. A -s opció letiltja ezt az utolsó összehasonlítást, így ha egy sorban minden mező azonos, akkor a sorok az eredeti sorrendben maradnak. Ha nincs mező, vagy globális opció megadva, akkor a -s opciónak nincs semmilyen hatása.
A GNU sort parancsának nincsenek megkötései a sorhosszakra vagy a sorokban használható karakterekre vonatkozóan. Egyébként ha az input file utolsó byteja nem az új sor jele, akkor a GNU sort automatikusan hozzátold egy sorvégjelet.
Ha a TMPDIR környezeti változó be van állítva, a sort ezt a megadott könyvtárat fogja használni az átmeneti fileok tárolására az alapértelmezés szerinti /tmp könyvtár helyett. A -T könyvtár opció egy másik módja az átmeneti könyvtár beállításának, ez az opció felülírja az előbbi környezeti változót.
A következő opciók a kimeneti sorok rendezését befolyásolják. Globálisan is megadhatóak, vagy egy speciális kulcsmező részeként. Ha nincs kulcsmező megadva, akkor a globális opciók teljes sorok összehasonlítására vonatkoznak, egyébként a globális opciókat azok a mező öröklik, melyekre nincsenek külön opciók megadva.
További kapcsolók (Opciók):
A pozíciót f. c formában adhatjuk meg, ahol az f a használandó mező, a c pedig +pos esetben a mező eleje utáni első, -pos esetben pedig az előző mező vége utáni első használható karakter. A .c részt akkor hagyhatjuk el, ha az a mező első karakterére mutat. Ha a -b opciót is megadtuk, akkor a .c a +pos esetben az mező, a -pos esetben pedig az előző mező utáni első nem üres karakterre mutat.
A +pos és a -pos paraméterek melett az Mbdfinr opciók bármelyike szerepelhet, és ez esetben a globális rendezési opciók nem használhatóak erre a különleges mezőre. A -b opció mind a +pos mind a -pos paraméter része is lehet. Ha ezt a globális opcióktól örökli, akkor mindkettőhöz tartozik. A -n vagy a -M opció használata a -b opció használatát is magával vonja. Ekkor a -b a +pos és a -pos kulcsnak is része lesz. A kulcsok akár több mezőt is áthidalhatnak.
Továbbá, ha a sort -ot pontosan egy paraméterrel hívják meg, akkor a következő opciók is használhatóak:
A sort régebbi változatainak (BSD és a System V) néhány opciója különbözik, különösen a -b, -f és -n. A GNU sort a POSIX viselkedését követi, amely gyakran olyan (de nem mindig), mint a System V viselkedése. POSIX következtében a -n már nem vonja magával a -b opciót. Az egységesség miatt már a -M is ugyanígy viselkedik. Ez bonyolultabb esetekben hatással lehet a mezőn belüli karakterpozíció-definiálás jelentésére. Ha ez zavarja önt, akkor adjon meg egy -b opciót is.
A -k következtében megjelenő mezőszámozási különbség zavaró lehet. Ez mind a POSIX hibája.
Szalay Attila <sasa@sophia.jpte.hu>
GNU Text Utilities | FSF |