Hasonló dokumentumok
Pere László Linux: felhasználói ismeretek I. Az alapok

Szkriptnyelvek. 1. UNIX shell

1. Alapok. #!/bin/bash

7. Laboratóriumi gyakorlat: Vezérlési szerkezetek II.

Operációs rendszerek. 11. gyakorlat. AWK - szintaxis, vezérlési szerkezetek UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

6. BASH programozás I.

BASH script programozás II. Vezérlési szerkezetek

S z á m í t ó g é p e s a l a p i s m e r e t e k

BASH SCRIPT SHELL JEGYZETEK

BEKÉRT ADAT KÉPERNYŐRE ÍRÁSA KÖRNYEZETI VÁLTOZÓK FÁJL REDEZETT KIÍRÁSA KÖNYVTÁRBAN BEJEGYZÉSEK SZÁMA FÁJLBAN SZÁM NÖVELÉSE. #!

8. Laboratóriumi gyakorlat: Bevezetés a reguláris kifejezések használatába

8. Laboratóriumi gyakorlat: Bevezetés a reguláris kifejezések használatába

Operációs rendszerek gyak.

Rendszerprogramozás Linux környezetben

A függvény kód szekvenciáját kapcsos zárójelek közt definiáljuk, a { } -ek közti részt a Bash héj kód blokknak (code block) nevezi.

AWK programozás, minták, vezérlési szerkezetek

A szürke háttérrel jelölt fejezet/alfejezet szövege a CD-mellékleten található. A CD-melléklet használata. 1. Elméleti áttekintés 1

Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):

AWK programozás, minták, vezérlési szerkezetek

Operációs rendszerek 1.


length (s): Az s karaklerlánc hossza, substr(s,m,n): Az s mezőben levő karakterláncnak az m-edik karakterétől kezdődő, n darab karaktert vágja ki.

A sed folyamszerkesztő

Kinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések. 1. Mi a programozás?

Delphi programozás I.

Operációs rendszerek gyak.

AWK programozás Bevezetés

Matlab alapok. Baran Ágnes. Baran Ágnes Matlab alapok Elágazások, függvények 1 / 15

Operációs rendszerek. 10. gyakorlat. AWK - bevezetés UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

Smalltalk 2. Készítette: Szabó Éva

Operációs Rendszerek II. labor. 2. alkalom

BGF. 4. Mi tartozik az adatmodellek szerkezeti elemei

Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):

7. Laboratóriumi gyakorlat, 1. rész : Vezérlési szerkezetek II.

Programozás alapjai C nyelv 4. gyakorlat. Mit tudunk már? Feltételes operátor (?:) Típus fogalma char, int, float, double

C programozás. 1 óra Bevezetés

A szerzõrõl... xi Bevezetés... xiii

További vezérlő valamint számításokat megkönnyítő szerkezetek

Bevezetés a programozásba

Operációs Rendszerek. Windows Parancssor

Mit tudunk már? Programozás alapjai C nyelv 4. gyakorlat. Legnagyobb elem keresése. Feltételes operátor (?:) Legnagyobb elem keresése (3)

Excel 2010 függvények

Programozás alapjai gyakorlat. 2. gyakorlat C alapok

A PROGRAMOZÁS ALAPJAI 3. Készítette: Vénné Meskó Katalin

Komputeralgebra Rendszerek

További vezérlő valamint számításokat megkönnyítő szerkezetek

Webprogramozás szakkör

HORVÁTH ZSÓFIA 1. Beadandó feladat (HOZSAAI.ELTE) ápr 7. 8-as csoport

C programozás. { Márton Gyöngyvér, 2009 } { Sapientia, Erdélyi Magyar Tudományegyetem }

A C# programozási nyelv alapjai

2018, Funkcionális programozás

Operációs rendszerek. 4. gyakorlat. BASH bevezetés, script írása, futtatása UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

Operációs rendszerek. 9. gyakorlat. Reguláris kifejezések - alapok, BASH UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

Objektumorientált Programozás III.

A sed folyamszerkesztő

8. Mezőutasítások. Schulcz Róbert 8. Mezőutasítások. v

Programozás alapjai gyakorlat. 4. gyakorlat Konstansok, tömbök, stringek

Programozás alapjai. 5. előadás

4. Javítás és jegyzetek

Egyetemi könyvtári nyilvántartó rendszer

A legfontosabb DOS parancsok

file./script.sh > Bourne-Again shell script text executable << tartalmat néz >>

Operációs rendszerek 2 1. óra: Linux alapok Ismétlés. Windisch Gergely félév

Programozás alapjai. 6. gyakorlat Futásidő, rekurzió, feladatmegoldás

Függvények Függvények

Informatika terméktervezőknek

Szövegkezelő programok általuk kínált lehetőségek

OOP I. Egyszerő algoritmusok és leírásuk. Készítette: Dr. Kotsis Domokos

Vezérlési szerkezetek Vezérlési szerkezetek: feltételes elágazás és ciklusok

Komputeralgebra Rendszerek

Munka állományokkal. mv: áthelyezés (átnevezés) rm: törlés. rmdir: üres könyvtár törlése. -r, -R: rekurzív (könyvtár) -r, -R: rekurzív (könyvtár)

3. Határozza meg és írja ki a minta szerint, hogy a forrásállományban hány kémiai elem felfedezési adatai

Python tanfolyam Python bevezető I. rész

Mintavételes szabályozás mikrovezérlő segítségével

Kifejezések. Kozsik Tamás. December 11, 2016

Forráskód formázási szabályok

BUJDOSO GYÖNGYI FAZEKAS ATTILA // / / KEZDOLEPESEK TERTIA KIADÓ

Listák, szótárak, fájlok Listák, szótárak, fájlok

Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra

Programozás alapjai 9.Gy: Struktúra 2.

Funkcionális Nyelvek 2 (MSc)

FordEcat Gyors útmutató

2 Access 2016 zsebkönyv

2 Excel 2016 zsebkönyv

Bánsághi Anna 2014 Bánsághi Anna 1 of 68

Munka állományokkal. mv: áthelyezés (átnevezés) rmdir: üres könyvtár törlése rm: törlés. -r, -R: rekurzív (könyvtár) -r, -R: rekurzív (könyvtár)

II. Mérés SZÉCHENYI ISTVÁN EGYETEM GYŐR TÁVKÖZLÉSI TANSZÉK

ELTE SAP Excellence Center Oktatóanyag 1

1. Feladat: beolvas két számot úgy, hogy a-ba kerüljön a nagyobb

10. gyakorlat Tömb, mint függvény argumentum

Operációs rendszerek 1.

OPERÁCIÓS RENDSZEREK I. BEVEZETÉS Koczka Ferenc -

1. Bevezetés A C++ nem objektumorientált újdonságai 3

Makrók használata az Excelben - Makróhibák kezelése, biztonságos jelszavak generálása

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 4.ELŐADÁS. Adatbázis alapú alkalmazások készítése PHP-ben

Ismerkedés a Python programnyelvvel. és annak micropython változatával

Járműfedélzeti rendszerek II. 2. előadás Dr. Bécsi Tamás

A MATLAB alapjai. Kezdő lépések. Változók. Aktuális mappa Parancs ablak. Előzmények. Részei. Atomerőművek üzemtana

Bánsághi Anna 2014 Bánsághi Anna 1 of 35

Szűrők Reguláris kifejezések, AWK

Átírás:

Büki András UNIX/Linux héjprogramozás

Büki András: UNIX/Linux héjprogramozás Büki András Felelõs kiadó a Kiskapu Kft. ügyvezetõ igazgatója 2002 Kiskapu Kft. 1081 Budapest Népszínház u. 29. Tel: (+36-1) 303-9119, 477-0443 Fax: (+36-1) 303-1619 http://www.kiskapu.hu/ e-mail: kiskapu@kiskapu.hu Sorozatszerkesztõ: Szy György Lektor: Rézmûves László Mûszaki szerkesztõ: Csutak Hoffmann Levente ISBN: 963 9301 10 8 Készült a debreceni Kinizsi Nyomdában Felelõs vezetõ: Bördõs János

Tartalomjegyzék 1. fejezet Alapelemek Helló világ: elsõ héjprogramunk...................................... 3 Változók használata............................................. 5 Idézõjelek használata, parancsbehelyettesítés......................... 8 Parancssori paraméterek......................................... 8 A szabványos be- és kimenet és ezek átirányítása...................... 9 Csövek...................................................... 11 A csatornák számozása és a hibacsatorna átirányítása.................. 13 Matematikai kifejezések kiértékelése : az expr parancs................. 15 Parancsvégrehajtás : az eval parancs............................... 18 A beágyazott dokumentum (here document)......................... 18 2. fejezet Programvezérlési szerkezetek Feltételes utasítás : if, test, && és............................... 23 Többszörös elágaztatás: a case szerkezet............................ 26 Ciklusszervezés : for, while és until................................ 28 Függvények.................................................. 33 3. fejezet Keresés, szûrés, szövegfeldolgozás, avagy a szabályos kifejezések lélektana Mire valók a szabályos kifejezések?................................... 39 A szabályos kifejezések alapelemei................................ 42 c (tetszõleges karakter)..................................... 42 \c....................................................... 42 ^........................................................ 43 $........................................................ 43......................................................... 43 [karakterek]................................................ 43 [^...]...................................................... 44 [c1-c2].................................................... 44 Jelentésmódosító jelek.......................................... 44 *........................................................ 44 +........................................................ 44 (...)...................................................... 45 {x} vagy {x,} vagy {x,y}........................................ 45 szabályos kifejezés 1. szabályos kifejezés 2...................... 46

vi UNIX/Linux héjprogramozás A szabályos kifejezések és a héj................................... 47 A szabályos kifejezések és a mosógép.............................. 49 Avagy hogyan írjunk szabályos kifejezéseket tartalmazó programot..... 49 4. fejezet A sed használata héjprogramokban A sed mûködési elve........................................... 55 A sed alapvetõ parancsai........................................ 57 p (Print).................................................. 57 d (Delete)................................................. 58 s (Substitute)............................................... 58 a (Append), i (Insert) és c (Change)............................. 62 y (Transform).............................................. 63 w (Write), r (Read).......................................... 64 n (Next), q (Quit)........................................... 65 Tizedespont, tizedesvesszõ...................................... 65 Készítsünk telefonkönyvet....................................... 68 5. fejezet Az AWK használata héjprogramokban Az awk mûködésének alapelvei................................... 77 A programok szerkezete és indítása............................. 77 Mezõk.................................................... 78 Kiíratás (print).............................................. 79 Felhasználó által megadott változók............................. 80 Kapcsolattartás a héjprogram és az awk program között............. 80 Belsõ változók............................................. 81 A mezõelválasztó karakterek kezelése........................... 82 Az AWK nyelvi elemei.......................................... 83 A BEGIN és END blokkok.................................... 83 Matematikai mûveletek....................................... 84 Feltételes utasítás........................................... 86 Beépített függvények........................................ 87 Ciklusok.................................................. 87 Fájlok kezelése............................................. 88 Összetett gyakorlatok........................................... 89 Telefonkönyv.............................................. 89 Kettes számrendszer......................................... 90 Átlagolás.................................................. 92 Névsor................................................... 94 Címlista és telefonkönyv összefésülése........................... 95 Egy sor, több sor............................................. 96

Tartalomjegyzék vii 6. fejezet A héjprogramok alapvetõ építõelemei A parancssori paraméterek és kapcsolók kezelése.................... 101 Parancssori paraméterek hiányának felismerése................... 101 Kapcsolók felismerése és fájl létezésének vizsgálata................ 102 Kapcsolók egybeírása....................................... 103 A getopts parancs.......................................... 106 Fájl típusának vizsgálata........................................ 107 A szabványos bemenet olvasása: szûrõként mûködõ héjprogram........ 108 Írás a képernyõre, olvasás a billentyûzetrõl......................... 110 Várakozás billentyû leütésére.................................... 113 Átmeneti fájlok kezelése....................................... 113 Jelek elfogása és kezelése...................................... 117 Zárolás..................................................... 121 Idõzített végrehajtás, várakozás.................................. 122 Önhívó parancsvégrehajtás teljes könyvtárszerkezetben............... 125 Az xargs parancs............................................. 127 7. fejezet Gyakorlatok I. Egyszerû feladatok.............................................. 133 Változatok egy témára: az angol ábécé betûi........................ 133 Feladat.................................................. 133 Elsõ megoldás............................................. 134 Ötletek.................................................. 134 A megoldás............................................... 135 Második megoldás......................................... 137 Ötletek.................................................. 137 A megoldás............................................... 137 Harmadik megoldás........................................ 138 Ötletek.................................................. 138 A megoldás............................................... 139 Negyedik megoldás........................................ 139 Ötletek.................................................. 139 A megoldás............................................... 140 A UNIX segédprogramok magyartudásának ellenõrzése.............. 141 Feladat.................................................. 141 Ötletek.................................................. 141 A megoldás............................................... 141 Tac..................................................... 142 Feladat.................................................. 142

viii UNIX/Linux héjprogramozás Ötletek.................................................. 143 A megoldás............................................... 143 Rev........................................................ 145 Feladat.................................................. 145 Ötletek.................................................. 145 A megoldás............................................... 145 Titkosítás................................................... 148 Feladat.................................................. 148 Ötletek.................................................. 148 A megoldás............................................... 148 Betûk megszámlálása.......................................... 150 Feladat.................................................. 150 Ötletek.................................................. 150 A megoldás............................................... 151 Digitális számok.............................................. 153 Feladat.................................................. 153 Ötletek.................................................. 153 A megoldás............................................... 154 Szavak keresése.............................................. 156 Feladat.................................................. 156 Ötletek.................................................. 156 A megoldás............................................... 156 Számábrázolási pontosság...................................... 159 Feladat.................................................. 159 Ötletek.................................................. 159 A megoldás............................................... 160 Csomagoljunk............................................... 160 Feladat.................................................. 160 Ötletek.................................................. 161 A megoldás............................................... 161 8. fejezet Gyakorlatok II. Segédprogramok................................................ 165 Igen vagy Nem?.............................................. 165 Feladat.................................................. 165 Ötletek.................................................. 165 A megoldás............................................... 165 Egyszerû menürendszer........................................ 167 Feladat.................................................. 167 Ötletek.................................................. 168

Tartalomjegyzék ix A megoldás............................................... 168 Interaktív parancsértelmezõ..................................... 170 Feladat.................................................. 170 Ötletek.................................................. 170 A megoldás............................................... 171 Számból szöveg.............................................. 174 Feladat.................................................. 174 Ötletek.................................................. 174 A megoldás............................................... 175 Telefonköltség kiszámítása...................................... 180 Feladat.................................................. 180 Ötletek.................................................. 180 A megoldás............................................... 181 Felhasználók bejelentkezésének figyelése.......................... 187 Feladat.................................................. 187 Ötletek.................................................. 187 A megoldás............................................... 187 Felhasználók lemezfoglalásának figyelése.......................... 190 Feladat.................................................. 190 Ötletek.................................................. 191 A megoldás............................................... 191 9. fejezet Tippek, trükkök Kiegészítés Bash-felhasználóknak................................... 201 Változó nem meghatározottá tétele.............................. 201 Parancsbehelyettesítések egymásba ágyazása....................... 203 A let parancs................................................ 204 Közvetett változóhasználat...................................... 205 Az üres parancs.............................................. 206 C stílusú megoldások.......................................... 207 Gyermekhéj és névtelen függvény használata....................... 209 Tömbök használata........................................... 211 Függelékek I. Függelék.................................................... 215 II. Függelék.................................................... 223 Tárgymutató.................................................... 229