sed_i_awk_sedawk.pdf

(438 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TREŒCI
sed i awk
Autorzy: Dale Dougherty, Arnold Robbins
T³umaczenie: Wojciech Derechowski
ISBN: 83-7197-540-6
Tytu³ orygina³u:
sed & awk, Second Edition
Format: B5, stron: 384
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Jest to ksi¹¿ka o narzêdziowych programach UNIX, nazywanych dziwnie sed i awk.
Programy te maj¹ ze sob¹ wiele wspólnego, zw³aszcza u¿ycie wyra¿eñ regularnych dla
dopasowywania wzorców. Poniewa¿ dopasowywanie wzorców jest tak wa¿ne w
stosowaniu obydwu programów, ksi¹¿ka bardzo wyczerpuj¹co wyjaœnia sk³adniê
wyra¿eñ regularnych UNIX. Skoro w uczeniu siê naturalny jest postêp od grep, poprzez
sed do awk, wiêc bêdziemy zajmowaæ siê wszystkimi trzema programami, choæ
skupimy siê na sed i awk.
Sed i awk s¹ narzêdziami stosowanymi przez u¿ytkowników, programistów
i administratorów -- przez ka¿dego, kto pracuje z plikami tekstowymi. Sed, nazywany
tak ze wzglêdu na to, ¿e jest edytorem strumieniowym, doskonale nadaje siê
wprowadzania ci¹gu poprawek (ang. edits) do wielu plików. Awk, którego twórcami
s¹ Aho, Weinberger i Kernighan (sk¹d pochodzi nazwa) jest jêzykiem programowania
umo¿liwiaj¹cym ³atwe dzia³ania na danych, które maj¹ strukturê i tworzenie
sformatowanych raportów. Ksi¹¿ka k³adzie nacisk na definicjê POSIX dla awk.
Prócz tego opisuje krótko pierwsz¹ wersjê awk przed omówieniem trzech wersji awk
dostêpnych bezp³atnie oraz dwóch bêd¹cych w sprzeda¿y, z których wszystkie s¹
implementacjami POSIX awk.
Ksi¹¿ka skupia uwagê na pisaniu dla sed i awk skryptów, stanowi¹cych szybkie
rozwi¹zanie wybranych problemów u¿ytkownika. Wiele ze skryptów tego rodzaju
mo¿na okreœliæ jako „doraŸne rozwi¹zanie”. Prócz tego opiszemy skrypty, które
rozwi¹zuj¹ wiêksze problemy, wymagaj¹ wiêc bardziej starannego projektowania
i programowania.
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOŒCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
2T\GFOQYC
Zakres podręcznika .................................................................................................................... 7
Dostępność sed i awk................................................................................................................. 8
Jak uzyskać przykładowy kod źródłowy ................................................................................. 12
Konwencje stosowane w podręczniku..................................................................................... 14
O drugim wydaniu ................................................................................................................... 15
Podziękowania z pierwszego wydania .................................................................................... 16
4Q\F\KCo #WVQOCV[E\PG PCT\úF\KC GF[ELK
Obyś rozwiązywał ciekawe zadania ........................................................................................ 17
Edytor strumieniowy ............................................................................................................... 19
Język programowania z dopasowaniem wzorców................................................................... 20
Cztery przeszkody w mistrzostwach sed i awk ....................................................................... 21
4Q\F\KCo <TQ\WOKGPKG RQFUVCYQY[EJ F\KCoCq
Od ed poprzez grep i sed do awk............................................................................................. 23
Składnia wiersza poleceń......................................................................................................... 28
U ycie sed................................................................................................................................ 30
U ycie awk .............................................................................................................................. 33
U ycie sed wraz z awk............................................................................................................. 36
4Q\F\KCo <TQ\WOKGPKG UMoCFPK Y[TC Gq TGIWNCTP[EJ
To jest wyra enie ..................................................................................................................... 40
Znaki w szyku.......................................................................................................................... 42
Mnie podoba się wszystko....................................................................................................... 65
UGF K CYM
4Q\F\KCo 2KUCPKG UMT[RVÎY UGF
Stosowanie poleceń w skrypcie ............................................................................................... 68
Adresowanie w perspektywie globalnej .................................................................................. 70
Testowanie i zapis danych wyjścia.......................................................................................... 72
Cztery typy skryptów sed ........................................................................................................ 75
W drodze do Ziemi Obiecanej ................................................................................................ 86
4Q\F\KCo 2QFUVCYQYG RQNGEGPKC UGF
O składni poleceń sed .............................................................................................................. 89
Komentarz................................................................................................................................ 90
Podstawianie ............................................................................................................................ 91
usuń .......................................................................................................................................... 96
dopisz, wstaw i zamień ............................................................................................................ 97
wylistuj................................................................................................................................... 100
transformuj............................................................................................................................. 103
drukuj ..................................................................................................................................... 103
drukuj numer wiersza ............................................................................................................ 104
następny ................................................................................................................................. 105
Odczyt i zapis do plików ....................................................................................................... 106
zakończ .................................................................................................................................. 113
4Q\F\KCo <CCYCPUQYCPG RQNGEGPKC UGF
Wielowierszowa przestrzeń wzorca ...................................................................................... 116
Przypadek do zbadania .......................................................................................................... 124
Utrzymuj wiersz..................................................................................................................... 127
Zaawansowane polecenia sterowania przepływem ............................................................... 134
Szkoda słów .......................................................................................................................... 139
4Q\F\KCo 2KUCPKG UMT[RVÎY FNC CYM
Zasady gry.............................................................................................................................. 143
Witajcie wszyscy ................................................................................................................... 144
Model programowania awk ................................................................................................... 145
Dopasowanie wzorca ............................................................................................................. 146
Rekordy i pola........................................................................................................................ 148
Wyra enia .............................................................................................................................. 152
Zmienne systemowe .............................................................................................................. 156
Operatory relacyjne i logiczne............................................................................................... 161
5RKU VTGEK
Drukowanie formatowane ..................................................................................................... 167
Przekazywanie parametrów do skryptu ................................................................................. 169
Pobieranie informacji............................................................................................................. 171
4Q\F\KCo -QPUVTWMELG YCTWPMQYG RúVNG K VCDNKEG
Instrukcje warunkowe............................................................................................................ 175
Pętle ....................................................................................................................................... 177
Inne instrukcje wpływające na sterowanie przepływem ....................................................... 182
Tablice ................................................................................................................................... 184
Procesor akronimów .............................................................................................................. 194
Zmienne systemowe, które są tablicami................................................................................ 199
4Q\F\KCo (WPMELG
Funkcje arytmetyczne ............................................................................................................ 203
Funkcje łańcuchów ................................................................................................................ 208
Pisanie własnych funkcji ....................................................................................................... 216
4Q\F\KCo &QNPC U\WHNCFC
Funkcja getline....................................................................................................................... 225
Funkcja close()....................................................................................................................... 229
Funkcja system().................................................................................................................... 230
Generator poleceń oparty na systemie menu ......................................................................... 232
Kierowanie wyjścia do plików i potoków ............................................................................. 236
Generowanie raportów w kolumnach.................................................................................... 239
Debugging.............................................................................................................................. 242
Ograniczenia .......................................................................................................................... 246
Wywołanie awk za pomocą składni #! .................................................................................. 247
4Q\F\KCo 4\GU\C CYM
Oryginalny awk...................................................................................................................... 251
Bezpłatnie dostępne wersje awk............................................................................................ 254
Komercyjne wersje awk ........................................................................................................ 267
Epilog..................................................................................................................................... 271
4Q\F\KCo 2GoPG CRNKMCELG
Interaktywny program do sprawdzania pisowni.................................................................... 273
Generowanie formatowanego indeksu .................................................................................. 285
Dalsze szczegóły programu masterindex .............................................................................. 308
UGF K CYM
4Q\F\KCo 9[DÎT UMT[RVÎY
utot.awk — podaj statystykę UUCP...................................................................................... 313
phonebill — nadzoruj u ycie telefonu................................................................................... 316
combine — odzyskaj binaria z wieloczęściowej postaci uuencode ...................................... 319
mailavg — sprawdź wielkość skrzynek pocztowych ............................................................ 320
adj — nastaw wiersze plików tekstowych............................................................................. 321
readsource — Formatuj pliki źródłowe programu dla troff .................................................. 327
gent — pobierz wpis termcap ................................................................................................ 332
plpr — preprocesor lpr........................................................................................................... 334
transpose — wykonaj transpozycję macierzy ....................................................................... 336
m1 — prosty makroprocesor ................................................................................................. 338
&QFCVGM # 2T\GYQFPKM UGF
&QFCVGM $ 2T\GYQFPKM CYM
&QFCVGM % 5WRNGOGPV FQ TQ\F\KCoW
5MQTQYKF\
Zgłoś jeśli naruszono regulamin