Egy kis bemutató a sed és az awk
Ez a függelék tartalmaz egy nagyon rövid leírást, hogyan kell dolgozni a szöveget feldolgozó eszközök sed és az awk. Ez meg fogja vitatni néhány alapvető parancsok, amelyek elvileg elég lesz, hogy megtanulják, hogy megértsék a legegyszerűbb kivitelben sed és az awk script belsejében egy héj nyelvet.
awk. minta feldolgozó nyelv egy C-szerű szintaxis
Mert minden különbözőségük a két közművek ugyanaz a formája, mindketten képesek együttműködni a reguláris kifejezéseket. vagy alapértelmezés szerint az adatok olvasható a szabvány bemenetről készülék és az eredményt a feldolgozás mind stdout eszközre. Mindkét eszköz UNIX-rendszerek, és tökéletesen kommunikálni egymással. Kimenete hang lehet továbbítani a szállítószalag a bemenetét egy másik. Ezek kombinációja adja a forgatókönyvek a héj nyelv, teljesítmény és a rugalmasság Perl.
Az egyik fontos különbség az, hogy abban az esetben, a sed, a szkript könnyen át tud menni érveket a közüzemi, míg abban az esetben, awk (lásd. Példa 33-3 példa és 9-22), ez sokkal nehezebb.
Az összes művelet, mi fog összpontosítani a három leggyakrabban használt. Ez a p - nyomtatás (stdout), d - eltávolítása és s - csere.
B-1 táblázat. Alapvető műveletek sed
Csere vonal üres sor egyenértékű törlése egybeesik egy sablont. A többi vonal változatlan marad. Például, s / GUI //. Módosítsa a következő sort
visszaperjel szimbólumok jelentése a újsor helyettesítő karaktert. Ebben az esetben a helyettesítő kifejezést folytatódik a következő sorban.
Ez a nyilatkozat helyettesíti vezető szóköz egymás után egy új sort. Várható eredmény - csere behúzás elején bekezdéseket üres sorok.
Egy cím tartomány előtt egy vagy több utasítást írja alá a dokumentumot előírhatja a nadrágtartó, a megfelelő fordítási karaktersorozat.
Ebben az esetben, akkor törli csak az első néhány egymás utáni üres sor. Ezt fel lehet használni, hogy hozzanak egy-line intervallumokban a fájlt, így, így, üres sorok között bekezdések.
Egy gyors módja annak, hogy kettős térben egy szöveges fájlt - sed G fájlnév.