Operációs rendszerek gyak.

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

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. 10. gyakorlat. AWK - bevezetés UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

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

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

Operációs rendszerek gyak.

Szkriptnyelvek. 1. UNIX shell

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

A C# programozási nyelv alapjai

1. Alapok. #!/bin/bash

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

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.

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

A C programozási nyelv II. Utasítások. A függvény.

Munka állományokkal, könyvtárakkal I.

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

Programozási alapismeretek beadandó feladat: ProgAlap beadandó feladatok téma 99. feladat 1

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

BASH SCRIPT SHELL JEGYZETEK

Algoritmizálás és adatmodellezés tanítása 1. előadás

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

Programozás BMEKOKAA146. Dr. Bécsi Tamás 3. előadás

Rendszerprogramozás Linux környezetben

1. Jelölje meg az összes igaz állítást a következők közül!

Operációs Rendszerek Gyakorlat

1. Bevezetés szeptember 9. BME Fizika Intézet. Szám. szim. labor ea. Tőke Csaba. Tudnivalók. feladat. Tematika. Moodle Házi feladatok

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


Szkriptnyelvek II. Perl programok

Programozás alapjai gyakorlat. 2. gyakorlat C alapok

hiányzott szeptemberben vagy A tanuló nem hiányzott szeptemberben szöveget

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

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

Bevezetés jogosultságkezelés, csővezeték, átirányítások. BASH script programozás

Flex tutorial. Dévai Gergely

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

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

Occam 1. Készítette: Szabó Éva

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

PPKE-ITK Bevezetés a programozásba 1.

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

Bevezetés a programozásba I.

Készítette: Nagy Tibor István Felhasznált irodalom: Kotsis Domokos: OOP diasor Zsakó L., Szlávi P.: Mikrológia 19.

Java II. I A Java programozási nyelv alapelemei

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

Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 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)

Programozás I. 3. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar

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

Delphi programozás I.

A C programozási nyelv I. Bevezetés

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

Java programozási nyelv

Operációs Rendszerek Gyakorlat Triviális segédfeladatok június PERL Tömbök és hashek Feladat: május 26-i beugró

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

Bevezetés az informatikába

Bevezetés a programozásba

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

1. Alapfogalmak Algoritmus Számítási probléma Specifikáció Algoritmusok futási ideje

C programozás. 1 óra Bevezetés

Bevezetés a programozásba I 4. gyakorlat. PLanG: Szekvenciális fájlkezelés. Szekvenciális fájlkezelés Fájlok használata

A JavaScript főbb tulajdonságai

Programozás(A szakirány) II. beadandó feladat Farkas András HP6S15 1. csoport Veszprémi Anna / Hudoba Péter

Programozás Minta programterv a 1. házi feladathoz 1.

Bevezetés a programozásba I.

Programozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós augusztus 29. Széchenyi István Egyetem, Gy r

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

UNIX/héjprogramozás - awk. Az awk

Rekord adattípus. Egymásba ágyazott rekordok. With utasítás. Változó rekord. Rekord konstans

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

Bevezetés jogosultságkezelés, csővezeték, átirányítások. BASH script programozás

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

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

6. BASH programozás I.

Webprogramozás szakkör

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

Programozás alapjai 6. előadás. Wagner György Általános Informatikai Tanszék

Bisonc++ tutorial. Dévai Gergely. A szabály bal- és jobboldalát : választja el egymástól. A szabályalternatívák sorozatát ; zárja le.

Bevezetés a programozásba. 6. Előadás: C++ bevezető

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

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.

Operációs rendszerek. 2. gyakorlat. Munka állományokkal UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

A C programozási nyelv I. Bevezetés

Ügyviteli rendszerek hatékony fejlesztése Magic Xpa-val mobilos funkciókkal kiegészítve. Oktatók: Fülöp József, Smohai Ferenc, Nagy Csaba

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)

Gregorics Tibor Modularizált programok C++ nyelvi elemei 1

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

Programozás I. 1. előadás: Algoritmusok alapjai. Sergyán Szabolcs

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

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

Bevezetés a Programozásba II 2. előadás. Adattípusok megvalósítása egységbe zárással. Adattípusok megvalósítása egységbe zárással

2. Készítsen awk szkriptet, amely kiírja az aktuális könyvtár összes alkönyvtárának nevét, amely februári keltezésű (bármely év).

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

Programozási nyelv Java

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

Szelekció. Döntéshozatal

Java II. I A Java programozási nyelv alapelemei

C programozási nyelv

Átírás:

Operációs rendszerek gyak. AWK programozás Hirling Dominik Szegedi Tudományegyetem

AWK AWK: a pattern scanning and processing language mintaelemző-és feldolgozó nyelv bármilyen szövegből minták alapján sorokat, mezőket képes kiemelni és ezeken a mezőkön módosításokat végezni C-re épül a szerkezete

AWK felépítés

AWK futtatása közvetlenül a parancssorból: awk PROGRAM INPUTFILE (nem ajánlott összetettebb feladatoknál) awk program forrásfájlból olvasva: awk -f PROGRAMFAJL INPUTFILE futtatható awk scriptként, ekkor: parancsértelmező fejlécbe #!/usr/bin/awk -f futtatás./scriptfile INPUTFILE

AWK program felépítése minden awk program szabályok sorozata minden szabály tartalmazhat egy mintát és egy hozzá tartozó akciót minden akció utasításokból áll a szabályok alakja: MINTA {AKCIÓ} a szabályokat (és az utasításokat is) egymástól sortöréssel vagy pontosvesszővel választhatjuk el

AWK program váz BEGIN{ } SZABALY1{ } SZABALY2{. } END{ }

AWK program futása feldolgozás során a program a bemenet tartalmát rekordokra (records) bontja, amik alapesetben a bemenet sorai a rekordokat a program tovább bontja mezőkre (fields), amik alapesetben a rekordok szóközzel elválasztott szavai a bemenet rekordonként kerül feldolgozásra, a program megpróbálja az aktuális rekordot illeszteni az összes szabály mintájára ha a bemenet illeszkedik egy szabály mintájára, akkor végrehajtódik a hozzá tartozó akció a mintákban nem csak a rekord tartalmától függő feltételeket fogalmazhatunk meg ha egy szabályhoz nincs minta hozzárendelve, az akció minden rekord esetén lefut ha egy szabályhoz nincs akció hozzárendelve, az egész rekord kíırásra kerül

AWK minták elemi minták: (MINTA): csoportosítás!minta: negáció /REGKIF/: igaz, ha az egész rekord illeszkedik a reg.kif.-re KIF /REGKIF/: igaz, ha KIF illeszkedik REGKIF-re KIF! /REGKIF/: igaz, ha KIF nem illeszkedik REGKIF-re speciális minták: BEGIN: csak a bemenet feldolgozása előtt teljesül END: csak a kimenet feldolgozása után teljesül összetett minták: MINTA1&&MINTA2: logikai ÉS MINTA1 MINTA2: logikai VAGY

AWK konstansok numerikus konstansok egész számok (12) valós számok tizedesponttal (25.3) egész vagy valós számok hatványkitevővel (1.234e+2) szöveges konstansok "STRING" "" (üres string) reguláris kifejezések /REGKIF/

AWK változók változók első használatkor automatikusan létrejönnek (nem kell őket deklarálni) változó típusa lehet numerikus, string, vagy tömb (később) számok és stringek közötti konverzió automatikus, de lehet manuálisan is: stringből szám: adjunk hozzá 0-t számból string: fűzzük hozzá az üres stringet értékadás egyszerűen NÉV=ÉRTÉK definiálatlan változók értéke típustól függően üres string vagy 0

AWK beépített változók FILENAME: aktuális bemeneti állomány neve RS: bemeneti rekordhatároló (default: sortörés) FS: bemeneti mezőhatároló (default: szóköz) NR: aktuális rekord sorszáma FNR: több fájl esetén aktuális rekord sorszáma az aktuális fájlon belül NF: aktuális rekord mezőinek száma OFS: kimeneti mezőhatároló ORS: kimeneti rekordhatároló $0: aktuális rekord teljes tartalma $1, $2, $3: aktuális rekord adott sorszámú mezőjének tartalma $NF: aktuális rekord utolsó mezőjének tartalma

AWK vezérlési szerkezetek használhatunk C-ben megszokott vezérlési szerkezeteket i f (PRED) { } e l s e { } while (PRED) { } do { } while (PRED)