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

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

Szkriptnyelvek. 1. UNIX shell

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

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

AWK programozás Bevezetés

Operációs rendszerek gyak.

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

BASH SCRIPT SHELL JEGYZETEK

BackupPC. Az /etc/hosts fájlba betehetjük a hosztokat, ha nem a tejles (fqdn, DNS név) névvel hivatkozunk rájuk: # /etc/hosts #

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.

Rendszerprogramozás Linux környezetben

Szűrők, reguláris kifejezések AWK programozás: minták, vezérlési szerkezetek, tömbök, beépített függvények, reguláris kifejezések

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


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

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.

1. Alapok. #!/bin/bash

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

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

Jelszavas hozzáférés korlátozás

Operációs rendszerek. 1. gyakorlat. Bevezetés, követelmények UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

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

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

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

A legfontosabb DOS parancsok

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

Kiszolgálók üzemeltetése. Iványi Péter

Operációs rendszerek gyak.

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?

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

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

C programozás. 1 óra Bevezetés

Bevezetés a programozásba I.

Webtárhely létrehozása a helyen. Lépések Teendő 1. Böngészőbe beírni: 2. Jobb oldalon regisztrálni (tárhelyigénylés).

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

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

Operációs rendszerek 2 3. alkalom - Reguláris kifejezések, grep, sed. Windisch Gergely windisch.gergely@nik.uni-obuda.hu

Operációs rendszerek gyakorlat

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

Operációs rendszerek gyakorlat

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

Programozás C- és Matlab nyelven C programozás kurzus BMEKOKAM603 Előfeldolgozó rendszer Tömbök. Dr. Bécsi Tamás 4. Előadás

Algoritmusok Tervezése. 4. Előadás Visual Basic 1. Dr. Bécsi Tamás

PYTHON. Avagy hosszú az út a BioPythonig

Bevezetés az informatikába, második gyakorlat. Bevezetés Környezetváltozók és néhány egyszerű utasítás Jogosultságok Fájlkezelés

Webprogramozás szakkör

INFORMATIKAI ALAPISMERETEK

Hálózati adminisztráció Linux (Ubuntu 9.04) 8. gyakorlat

ALAP BEÁLLÍTÁSOK. 1. Jogosultság megadás, hogy tudjunk dolgozni sudo s jelszó:xxxxxx. 2.Hálózati kártyák beállítása mcedit /etc/network/interfaces

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

A sed folyamszerkesztő

PHP. Telepítése: Indítás/újraindítás/leállítás: Beállítások: A PHP nyelv

Operációs rendszerek 1.

OE-NIK 2010/11 ősz OE-NIK ősz

Linux alapok gyakorlat

1. Egyszerű (primitív) típusok. 2. Referencia típusok

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

Operációs rendszerek. 3. gyakorlat. Jogosultságkezelés, linkelés, csővezeték UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

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

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

Programozási nyelvek JAVA EA+GY 1. gyakolat

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

A sed folyamszerkesztő

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós május 6. Széchenyi István Egyetem, Gy r

4. Laborgyakorlat. A fájlokról ezeket az adatokat, a fájlrendszer tárolja. Számunkra az 1, 3, 4. oszlopok lesznek az érdekesek.

Operációs rendszerek 1.

Ismerkedjünk meg a Linuxszal!

Flex tutorial. Dévai Gergely

PHP alapjai, bevezetés. Vincze Dávid Miskolci Egyetem, IIT

Könyvtári címkéző munkahely

Unix-Linux alapok I. gyakorlatvezető: Lutár Patrícia

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

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

Egyetemi könyvtári nyilvántartó rendszer

Operációs Rendszerek. Windows Parancssor

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe

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)

8. WebDAV kiszolgáló konfigurálása

Operációs Rendszerek Gyakorlat

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 6.ELŐADÁS. Fájlkezelés PHP-ben

PowerShell v2.0 alapok. Nagy Miklós

Opensuse automatikus telepítése

Unix/Linux alapok 2. Operációs rendszerek I. készítette: Kozlovszky Miklós, Bringye Zsolt Póserné Oláh Valéria, Windisch Gergely

Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1

BioAdmin 4.1 könnyű telepítés csak Kliens használatra

Használati útmutató a Székács Elemér Szakközépiskola WLAN hálózatához

ELTE SAP Excellence Center Oktatóanyag 1

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

FTP szerver telepítése

Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606. Dr. Bécsi Tamás 3. előadás

Operációs rendszerek gyakorlat

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

Tájékoztató. Használható segédeszköz: -

Operációs rendszerek gyakorlat

Hálózati rendszerek adminisztrációja JunOS OS alapokon

Operációs rendszerek I. - UNIX felhasználói ismeretek és héjprogramozás. Az awk

Gyors tippek linuxra

Programozási nyelvek Python

Web fejlesztés IV. Illés Zoltán ELTE TTK Informatika I n f o r m a t i k a

Átírás:

S z á m í t ó g é p e s a l a p i s m e r e t e k 8. előadás

Ami eddig volt Számítógépek architektúrája Alapvető alkotóelemek Hardver elemek Szoftver Gépi kódtól az operációs rendszerig Unix alapok Shell script I. Változók, reguláris kifejezések Elágazások, ciklusok

Ami ma következik További shell script programozási elemek sed awk Webes publikálás Hitelesítés kérése Unix-Linux management alapok

sed utasítás Szűrő, Stream Editor, adatfolyam szerkesztő Feladata: Komplex behelyettesítések, cserék a szabványos bemenetre érkező sorokon, eredmény a szabványos kimeneten. Veszi az összes sort (ciklus), majd minden egyes soron a parancsai végrehajtódnak, a módosított sor a kimenetre kerül! Példa: cat osztaly sed s/3/9/g Keressük meg a sorokban az összes (g) 3-t, majd ezt cseréljük ki 9-re.

sed parancs opciók -n, Nincs automatikus kiírás a szabvány kimenetre. Csak a sed script kiíró utasításai írnak a kimenetre. -f scriptfile, A paraméterül megadott fájlban van a program, a sed script. Jellemzően egy sorba egy parancsot írunk, de a ; elválasztóval több parancs is kerülhet egy sorba. -e A sed parancssorában több script van. Egy esetén elhagyható.

sed script utasítások Több parancs megadása közvetlen script parancsban: ; Pontosvessző a parancsok között! Példa: cat osztaly sed s/3/9/g ; s/9/21/ # Cseréljük az osztály soraiban az összes 3-at 9-re, majd az első kilencest 21-re minden sorban! Külön sorba írhatók a parancsok, másodlagos promptot kapunk! $ cat osztaly sed s/3/9/g >s/9/21/ [enter] zoli 21 4 2 5 4 feri 2 21 4 5 9 juli 4 21 2 9 9 $

sed fontosabb parancsok I. Behelyettesítés: [cím] s /minta/új_minta/[jelző] Jellemzően a minta reguláris kifejezés, ezt keressük. A cím is lehet reguláris kifejezés. A jelző értékei: n: 1 és 512 közti szám, a cserét az első n mintán kell elvégezni, ha elmarad, n=1. $ utolsó sor! g: Az összes mintát le kell cserélni. p: Kilistázza az aktuális sort! (pg együtt is lehet) w fájl: Menti fájlba az aktuális sort!

sed fontosabb parancsok II. /új_minta &/ Új mintát a minta elejére teszi Pl: echo fradi sed 's/fradi/hajra &/ #hajra fradi \n használata, \1 az 1. regurális kifejezés, \ elnyomja a következő metakarater hatását(\.ali) \ enter, soremelés beszúrása (\ >\2/ ) illes@panda:~$ echo.ali 4 Ali baba sed 's/\.ali \([0-9][0-9]*\) \(.*\)/\1. rész\ > \2/ (enter) 4. rész Ali baba illes@panda:~$

sed fontosabb parancsok III. Törlés: [címtartomány]d d parancs törli a címtartomány sorait Pl: cat osztaly sed '1d; s/3/9/pg; s/9/21/ #első sort törli, majd a többi soron a másik két parancs Hozzáfűzés: a Pl: cat osztaly sed 'a\alma # új sorként az alma, minden sor után Beszúrás: Pl: cat osztaly sed '2,3i\alma # 2,3 sor elé alma

sed fontosabb parancsok IV. És még sokan mások

sed leírás Google: sed http://www.szabilinux.hu/ufi/tartalom.html 7. fejezet: sed http://www.gnu.org/software/sed/manual/sed. html GNU teljes sed leírás.

Mi van a sed után? AWK A sed nagyon jó, nagyon hasznos, de Jellemzően mintacserére használható. Sorokon belüli tevékenység korlátozott. Nincs aritmetikai lehetőség. (Valami van csak nem az igazi ) Vezérlési szerkezetek hiányoznak. (Van ugró, feltételes ugró utasítás,) A kiút: AWK

AWK Alfred V. Aho, Peter J. Weinberger, Brian W. Kernighan Schell hiányosságai szövegfeldolgozáskor Gyakorlatilag C nyelvi lehetőségek Tipikus szűrő Gyakran schell script elemként használt Soronkénti szövegkezelés, Minden soron végrehajtódó program awk gawk (GNU AWK) http://www.gnu.org/software/gawk/manual/gawk.html

AWK program helye, program szerkezet whereis awk # /usr/bin/awk, Az awk vagy paraméterként vagy a szabvány bemenetén várja az átdolgozandó adatokat. Soronkénti feldolgozás. Első sor előtti, utolsó utáni inicializálási blokk. A parancsblokkok {} jelek közti utasítás Parancsblokk előtti minta: Példa: /f.*/ /reguláris kifejezés/ A minta egy logikai kifejezést tartalmaz: $2 == alma

AWK használata Program, közvetlenül mintegy paraméter awk { print ;} adatfile A program minden sorra vonatkozik, kiírja azt File-ban a program awk f programfile adatfile Helyette gyakran az awk programfile a parancs #!/usr/bin/awk f Ez az első sor parancsa. pl: $ awk_program1 adatfile Szűrőként Parancs1 awk-parancsfile # jellemző parancs alakja

Bemeneti sorok elemei $0 a teljes sor $1, $2, - a sor első, második eleme Mezőelválasztó: FS (alap: helyköz vagy tab) Lehet több karakter is: FS= abc Egy sor mezőinek száma: NF Sorelválasztó karakter: RS (alap: újsor) Az eddig beolvasott sorok száma: NR Több bemeneti fájl esetén: FNR, egy fájl sorszáma

Programkód: Futtatás: $cat osztaly elsoawk Kezdem a programot! A Feri sor tartalma: feri 2 3 4 5 3 Itt a vége! $ AWK példa #!/usr/bin/awk -f # Kezdő blokk! BEGIN { print "Kezdem a programot!"; # ide jöhetnek a tovabbi kezdő, először # végrehajtandó parancsok, pl mezőelválasztó FS=":" } # Minden sorban keresi a feri-t, ha találja kiírja /feri/ { print "A Feri sor tartalma: "$0; } # Befejezés END { print "Itt a vége!"; }

awk változók, kifejezések Beépített változók nagybetűsek! Pl: NF Nincs típus: név=érték, érték:szám, szöveg v= alma ; print v; #alma Szövegösszefűzés: nincs operátor, egymás után kell írni a változókat! Pl: {v="alma";f="fa"; print 5 v f} #5 almafa Konverzió automatikus, ha úgy érzi, hogy kell: {v="alma";f="fa";print v+f} #0 {v="3alma";f="2fa"; print v+f} # 5

awk tömbök t[0]=3, stb. megadjuk az index elemeket. Tömb elemei különböző típusúak lehetnek. Valójában asszociatív tömbök: t[ egy ]=1; print t[ egy ]; Tömb hossza: length(t) Egy index bent van-e a tömbben: 4 in t Elem törlése: delete t[4] Többdimenziós tömbök: tt[1,2]=3;

awk matematikai operátorok, függvények +, -,++,--, *, /, %, - szokásos műveletek Logikai érték mint C-ben!=,==, <,> - logikai operátorok && logikai és, logikai vagy,! tagadás ~,!~ minta illeszkedés, nem illeszkedés A jobb oldali operandus lehet reguláris kifejezés is / /. A $0 ~ /reg.kif/ alak rövidítve: /reg.kif/, emiatt szerepel az awk blokkok előtt csak így! ** vagy ^ hatványozás, pl: 2**3 #8

awk matematikai függvényei Fontosabb beépített függvények: int(szám) # egészrész, print int(3.7) #3 sqrt(szám) #négyzetgyök sin(x), cos(x) # rand() # ]0,1[ intervallumban véletlenszámot generál x=int(10*rand()) # 0,1, 9 exp(x), log(x) # e ** x, ln(x) atan2(x,y) # arc. tangens x/y

Egyéb hasznos awk függvények {v=length( almafa );print v} #szöveg hossza split szöveg darabolás Pl: split( ali:pali:robi, n, : ); print n[1] #ali sprintf(sz, minta,változók), mint C-ben system( parancs ) op. rendszer par. futtatás Pl: {system( date >datum ) } File olvasás: getline <"/home/adat ; print $0; Következő getline, következő sor.

awk vezérlési szerkezetek Elágazás if (x % 2 == 0) print "x páros ; else print "x páratlan" Ciklusok, mint C-ben while (kif) utasítás do while (kif) for(kif1;kif2;kif3) utasítás for (i in tömb) tömb[i] feldolgozása

AWK összegzés, példa Help: Google: awk, gawk BEGIN blokk, a soronkénti feldolgozás előtt hajtódik végre END blokk, a soronkénti feldolgozás után hajtódik végre Minta {soronkénti blokk} Példa: user.awk

Unix-Linux boot Boot sector MBR LILO op. Rendszer választás Kernel betöltése Init processz indítása (/sbin/init) /etc/inittab konfigurációs állomány Alapértelmezett futásszint beállítás Futásszintek 0- rendszeráll, 1- single user mód, 2,3,4,5- rendes szintek, 6- reboot A 2-5 szinteket minden rendszer sajátosan definiálja Mi a teendő az egyes futásszinteknél /etc/init.d/rc szint GETTY indítás

Szerver elérés IP konfiguráció Parancssori lehetőség Ifconfig, vagy újabban ip parancs (eth0, lo(opback)) Adminisztrációs felület SUSE- yast, IBM-smit, stb. Terminál elérés Ssh FTP FTP over SSL Webes elérés

Web publikáció, hitelesítés public_html könyvtár Módosítható, a httpd.conf állományban Rendszergazda (root) jogosítvány Ha egy könyvtárban van index.html (def. dokumentum), akkor azt adja vissza. Ha nincs index.html, akkor mintegy ftp tartalomjegyzék! Publikus minden, mindenkinek!

Hitelesítés, jelszó védelem Adott könyvtárra érvényes, ha.htaccess file létezik a könyvtárban (speciális forma) htpasswd, basic, kódolás nincs, apache2 esetén htpasswd2 a név szamalap.inf.elte.hu gépen: /usr/bin könyvtárban Használat: htpasswd [-c] filenév usernév -c filenév új állomány lesz Megkérdezi a jelszót, majd a névvel együtt a file-ba rakja kódolva a jelszót Példa: letolt könyvtár htdigest, MD5 kódolás (apache2 esetén htdigest2) Használat: htdigest [-c] filenév azonosító usernév Bőngészőfüggő lehet I l l é(ie s?, Z ofirefox l t á n...) E L T E I K

Apache irodalom Apache Web szerver konfigráció /etc/httpd.conf Vagy újabban: /etc/apache2/ és itt sok kis conf. http://httpd.apache.org/docs/1.3/howto/htacce ss.html Google Könyvesbolt

.htaccess tartalom AuthType Basic AuthName "Gyumolcsfa gyujtemeny" AuthUserFile /usr/people/illes/public_html/letolt/alma Require user alma Order deny,allow # sorrend: tiltás, engedélyezés Deny from all Allow from elte.hu allow from 81.82.83.94 Satisfy any # valamelyik kritériumnak igaznak kell lenni ahhoz, hogy hozzáférésünk legyen a tartalomhoz

Unix-Linux management alapok Központi management programok SMIT, YAST,YAST2 Kézi módosítás /etc könyvtár /etc/hosts, /etc/passwd, /etc/shadow, /etc/services /etc/resolf.conf, /etc/sendmail.conf /etc/inetd.conf Internet server konfiguráció /etc/sendmail.cf /etc/httpd.conf

Felhasználó management Központi adminisztrációs eszköz Létezik minden Unix rendszeren Kényelmes, könnyű használat Hátrány: nagy létszámnál nehézkes, lassú Megoldás: script használat Kézi módszer /etc/passwd, /etc/shadow kézi módosítása Létezik adduser, useradd vagy hasonló nevű parancs. Példa: useradd.awk (webprogramozas)

Apache config- Virtuális gép beállítás Httpd.conf Általában /etc könyvtárban Webprogramozáson /etc/apache2 könyvtárban (Suse linux) Nem egy fájl, hanem szét van szedve funkcionalitás szerint. SSI, CGI jogok Könyvtárra,.shtml kiterjesztés Mod_userdir.conf Virtuális könyvtár Vhosts.d könyvtárban, adott nevű.conf állományok

K ö s z ö n ö m a f i g y e l m e t! I l l é s Z o l t á n E34 L T E I K